http://www.cnblogs.com/wangfengming/articles/8064956.htmlhtml
3.數據操做 1.增 INSERT into t2(name,age) VALUES('小三',11); -- 指定字段插入 INSERT into t2 VALUES('鳳',13,2.5); -- 整表字段插入 INSERT into t2 VALUES('鳳',13,2.5),('鳳',13,2.5),('鳳',13,2.5),('鳳',13,2.5),('鳳',13,2.5); --插入多條 insert into t1 SELECT id,name from t2; -- 複製表數據 2.刪 delete from t2 where age = 1113; 3.改 update t2 set name ='祝小鳳' , salary = 100 where age =13; 4.查 select * from T1; 1.簡單查詢 -- 查詢全部 select * from person; --查詢指定字段 select name,age FROM person; -- 別名+字段運算 select p.name,p.salary,p.salary+p.salary*0.1 as 'sum' from person as p -- 去重複查詢 select DISTINCT salary,name from person; 2.條件查詢 -- 邏輯運算符 < > <= >= != <> = -- is null ,is not null -- and OR () SELECT * from person where salary >5000 or ( age <=30 AND NAME =''); 3.區間查詢 SELECT * FROM person where salary >=5000 and salary<=10000; -- 推薦使用 : --ps:先後包含 SELECT * FROM person where salary between 5000 and 10000; 4.集合查詢 in not in SELECT * FROM person where age = 20 or age = 23 or age =30 ; SELECT * FROM person where age not in(20,23,30); 5.模糊查詢 like SELECT * FROM person where name LIKE '%月'; -- 以什麼結尾 SELECT * FROM person where name LIKE '月%'; -- 以什麼開頭 SELECT * FROM person where name LIKE '%月%'; -- 包含 SELECT * FROM person where name LIKE '_l%'; -- "_"表示佔位符 6.排序 select * from person ORDER BY salary ASC,age desc; -- 強制中文[排序 select * FROM person ORDER BY CONVERT(name USING GBK) ; 7.聚合函數 select MAX(salary) from person; select MIN(salary) from person; select AVG(salary) from person; select SUM(salary) from person; select COUNT(*) from person; 8.分組查詢 GROUP BY HAVING select count(id),dept_id,avg(salary) from person GROUP BY dept_id HAVING avg(salary) >=5000 ; where 與 having區別: #執行優先級從高到低:where > group by > having #1. Where 發生在分組group by以前,於是Where中能夠有任意字段,可是絕對不能使用聚合函數。 #2. Having發生在分組group by以後,於是Having中能夠使用分組的字段,沒法直接取到其餘字段,能夠使用聚合函數 9.分頁查詢 LIMIT SELECT * FROM person LIMIT 2,2 10.正則表達式 SELECT * FROM person where name REGEXP '^a'; SELECT * FROM person where name REGEXP 'n$'; SELECT * FROM person where name REGEXP '.a'; SELECT * FROM person where name REGEXP '[a,e,n]'; SELECT * FROM person where name REGEXP '[^alex]'; SELECT * FROM person where name REGEXP 'a|e'; SELECT * FROM person where name REGEXP '^w.*i$'; 11. SQL 語句關鍵字的執行順序 執行順序: FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> ORDER BY ->limit