存儲引擎sql
InnoDB是一個可靠地事務處理引擎,不支持全文本搜索 MyISAM是一個性能極高的引擎,支持全文本搜索,不支持事務處理數據庫
數據庫-database服務器
保存有組織的數據的容器(一般是一個文件或一組文件)佈局
表-table性能
特定類型數據的結構化清單code
模式-schema排序
關於數據庫和表的佈局及特性的信息事務
列-column字符串
特定類型數據的結構化清單table
數據類型-datatype
所允許的數據的類型。每一個表列都有相應的數據類型,它限制(或允許)該列中存儲的數據
行-row
表中的一個記錄
主鍵-primary key
一列或一組列,其值可以惟一區分表中的每一個行
** 建立庫 ** SQL CREATE DATABASE TEST_001;
** 切換數據庫 ** SQL use db_name;
** 顯示全部的數據庫** SQL show databases;
** 顯示數據庫中全部的表** SQL use db_name; show tables;
** 顯示某一個表的結構信息** SQL show columns from table_name; or desc table_name;
** 顯示錶的建立sql** SQL show create database db_name; show create table table_name;
** 其它命令** SQL show status 服務器狀態信息 show grants 顯示受權用戶 show errors/show warnings 顯示服務器錯誤或警告信息
MySQL子句順序: SELECT FROM WHERE GROUP BY HAVING ORDER BY LIMIT
** 查詢單個列,多列,所有列,去重** SQL SELECT col FROM table; SELECT col1, col2 FROM table; SELECT * FROM table; SELECT DISTINCT col FROM table;
** 限定查詢條數** SQL SELECT col1 FROM table LIMIT 5; 前5條數據 SELECT col1 FROM table LIMIT 5,5; 從第5條開始,取5條數據
** 排序**
DESC:倒序 ASC:升序
SQL SELECT col1 FROM table ORDER BY col1 默認升序 SELECT col1 FROM table ORDER BY col1,col2 默認升序
** WHERE,範圍,空值檢查** SQL SELECT col1, col2 FROM table WHERE col1 = 'hello'; SELECT col1, col2 FROM table WHERE col2 BETWEEN 5 AND 10; SELECT col1, col2 FROM table WHERE col3 IS NULL;
** AND、OR**
優先級 and 大於 or, 先處理的and, 當二者都存在時,須要使用括號指定優先級
SQL SELECT col1, col2 FROM table WHERE col1 = 'hello' AND col2=3; 兩個條件都要符合 SELECT col1, col2 FROM table WHERE col1 = 'hello' OR col2=3; 只要一個條件符合 select prod_id from products where (prod_price < 2.5 or vend_id = 1000) and prod_price > 1;
** IN,NOT IN** ```SQL SELECT col1 FROM table WHERE col1 IN (1,100); 查詢col1爲1,100的數據 SELECT col1 FROM table WHERE col1 NOT IN (1,100); 查詢col1不爲1,100的數據
** LIKE** ```SQL 多個匹配 SELECT col1 FROM table WHERE col1 LIKE ‘hell%’ ; 匹配以hell開頭字符串 SELECT col1 FROM table WHERE col1 LIKE ‘%hell’; 匹配以hell結尾字符串 單個匹配 SELECT col1 FROM table WHERE col1 LIKE ‘_hell’; hell前有一個字符