1,、基本查詢語句 (1)使用SELECT語句查詢一個(gè)數(shù)據(jù)表SELECT * FROM 數(shù)據(jù)表名;(2)查詢表中的一列或多列SELECT 字段名1,,字段名2 FROM 數(shù)據(jù)表名;(3)從多個(gè)表中獲取數(shù)據(jù)SELECT 字段名1,,字段名2 FROM 數(shù)據(jù)表名1,數(shù)據(jù)表名2 (WHERE條件); 2,、查詢指定數(shù)據(jù) WHERE SELECT * FROM 數(shù)據(jù)表名 WHERE 條件表達(dá)式; 3,、帶IN關(guān)鍵字的查詢 SELECT * FROM 表名 WHERE 條件 [NOT] IN (元素1,元素2,,...,,元素n或者是嵌套的條件表達(dá)式); 4、帶BETWEEN AND的范圍查詢 SELECT * FROM 表名 WHERE 條件 [NOT] BETWEEN 取值1 AND 取值2; 5,、帶LIKE的字符匹配查詢 LIKE是比較常用的比較運(yùn)算符,,通過它可以實(shí)現(xiàn)模糊查詢,有兩種通配符:“%”和下劃線“_” “%”可以匹配一個(gè)或多個(gè)字符,,可以代表任意長度的字符串,,長度可以是0,。例如“明%技”表示以“明”開頭,,以“技”結(jié)尾的任意長度的字符串,。該字符串可以代表明日科技、明日編程科技等,。 “_”只匹配一個(gè)字符,,例如,m_n表示以m開頭,,以n結(jié)尾的3個(gè)字符,,中間的“_”可以代表任意一個(gè)字符。 6,、IS NULL關(guān)鍵字查詢空值 SELECT * FROM 表名 WHERE 字段名 IS NULL; 7,、使用AND的多條件查詢 只有同時(shí)滿足所有查詢條件的記錄會被查詢出來。SELECT * FROM 表名 WHERE 條件1 AND 條件2; 8,、使用OR的多條件查詢 只要滿足其中一個(gè)查詢條件即可,。SELECT * FROM 表名 WHERE 條件1 OR 條件2; 9、用DISTINCT關(guān)鍵字去除結(jié)果中的重復(fù)行 SELECT DISTINCT 字段名 FROM 表名; 10,、用ORDER BY關(guān)鍵字對查詢結(jié)果排序 使用ORDER BY對查詢結(jié)果進(jìn)行升序(ASC)和降序(DESC)排列,,默認(rèn)按升序排列。例如:SELECT * FROM tb_borrow ORDER BY borrowTime DESC; 11,、用GROUP BY關(guān)鍵字分組查詢 通過GROUP BY子句可以將數(shù)據(jù)劃分到不同的組中,,實(shí)現(xiàn)對記錄進(jìn)行分組查詢,在查詢時(shí),,所查詢的列必須包含在分組的列中,,目的是使查詢到的數(shù)據(jù)沒有矛盾。 12,、用LIMIT限制查詢結(jié)果的數(shù)量 例如:SELECT * FROM 表名 ORDER BY 字段名 DESC LIMIT 3;使用LIMIT還可以從查詢結(jié)果的中間部分取值,,首先要定義兩個(gè)參數(shù),,參數(shù)1是開始讀取的第一條記錄的編號(在查詢結(jié)果中,第一個(gè)結(jié)果的記錄編號是0,,而不是1);參數(shù)2是要查詢記錄的個(gè)數(shù)。如:SELECT * FROM 表名 ORDER BY 字段名 DESC LIMIT 2,3; 13,、聚合函數(shù)查詢 COUNT()函數(shù)返回集合中非NULL值的記錄的個(gè)數(shù)SELECT COUNT(*) FROM 表名; SUM()函數(shù)可以求出表中某個(gè)數(shù)值類型字段取值的總和,。SELECT SUM(amount) FROM 表名; AVG()函數(shù)可以求出表中某個(gè)數(shù)值類型字段取值的平均值SELECT AVG(score) FROM 表名; MAX()函數(shù)可以求出表中某個(gè)數(shù)值類型字段取值的最大值。SELECT MAX(score) FROM 表名; MIN()函數(shù)可以求出表中某個(gè)數(shù)值類型字段取值的最小值SELECT MIN(score) FROM 表名; 14,、內(nèi)連接查詢 如:SELECT bookid,,borrowtime,backTime,,ifback FROM tb_borrow,tb_bookinfo WHERE tb_borrow.bookid = tb_bookinfo.id; 15,、復(fù)合條件連接查詢 SELECT bookid,borrowtime,,backTime,,ifback FROM tb_borrow,tb_bookinfo WHERE tb_borrow.bookid = tb_bookinfo.id AND ifback=0; 16、帶EXISTS關(guān)鍵字的子查詢 SELECT bookid,,borrowtime,,backTime,ifback FROM tb_borrow,tb_bookinfo WHERE EXISTS(SELECT * FROM tb_borrow WHERE tb_borrow.bookid = tb_bookinfo.id AND); 17,、帶ANY關(guān)鍵字的子查詢 列名 比較運(yùn)算符 ANY (子查詢); 18,、帶ALL關(guān)鍵字的子查詢 列名 比較運(yùn)算符 ALL (子查詢); 19、合并查詢結(jié)果 使用UNION關(guān)鍵字:可以將多個(gè)查詢結(jié)果集合并在一起,,并且去除相同記錄 使用UNION ALL關(guān)鍵字:合并在一起,,但是不會去除相同記錄SELECT bookname FROM tb_bookinfoUNION(ALL)SELECT bookname FROM tb_bookinfo1; 20、使用正則表達(dá)式查詢 字段名 REGEXP ‘匹配方式’ |
|