MySQL筆記(二)之數據檢索常用關鍵字


SELECT

用於數據的選擇

語法:

SELECT 列 FROM 表;         #從表中選擇某些列,也可以是*,代表全部列  

DISTINCT

當某些列包含重復值的時候,DISTINCT用於過濾掉重復值,使重復值只顯示一次。

語法:

SELECT DISTINCT 列 FROM 表; 

WHERE

對選取的數據進行約束

語法:

SELECT 列 FROM 表 WHERE 列 運算符 值;  

運算符:

=	                  等於
<>/!=	                  不等於
>	                  大於
<	                  小於
>=	                  大於等於
<=	                  小於等於
BETWEEN AND	          在某個范圍內
LIKE	                  搜索某種模式

AND & OR 運算符

AND 和 OR 運算符用於基於一個以上的條件對記錄進行過濾。

語法:

SELECT * FROM Persons WHERE 列1='A' AND 列2='B'  
SELECT * FROM Persons WHERE (列1='A' AND 列2='B') OR (列1='c' AND 列2='d')   # 組合使用

ORDER BY 子句

ORDER BY 語句用於對結果集進行排序,默認升序。

語法:

SELECT * FROM 表 ORDER BY 列   # 選擇所有列,並且按照某一類進行進行排序,默認升序
SELECT * FROM 表 ORDER BY 列1,;列2  # 列1相同時,按照列2排序  

DESC

默認情況下,mysql的排序是升序,DESC關鍵字可以指定降序

語法:

SELECT * FROM 表 ORDER BY 列 DESC  # 選擇所有列,並且按照某一類進行進行排序,指定升序

LIMIT

當表中數據量很大時,LIMIT規定要返回的記錄的數目

語法:

SELECT * FROM 表 LIMIT n   # 限制返回n條數據

LIKE 操作符

通過使用通配符來進行模糊匹配

MySql常用通配符有:
% 代表一個或者多個字符
_ 代表一個字符

語法:

SELECT * FROM 表 WHERE 列 LIKE pattern   # 其中的pattern一般是通配符

樣例:

# 假設我們的表中有city字段,包含南京北京,我們想要返回這兩座城市數據
SELECT * FROM 表 WHERE city LIKE '%京'   # 通配符的意思是以任意開頭,而以京結尾。

IN

IN 操作符允許我們在 WHERE 子句中規定多個值。

語法:

SELECT * FROM 表 WHERE 列 IN (值1,值2,...)   # 選出某列中包含值1,值2的所有數據

樣例:

# 假設我們的表中有city字段,包含南京北京,我們想要返回這兩座城市數據
SELECT * FROM 表 WHERE city IN ('南京', '北京')

BETWEEN AND

操作符 BETWEEN ... AND 會選取介於兩個值之間的數據范圍。這些值可以是數值、文本或者日期。

語法:

SELECT * FROM 表 WHERE 列 BETWEEN value1 AND value2

NOT

取反

AS

為選取的列指定別名

語法:

SELECT 列 AS 列別名 FROM 表

GROUP BY

數據分組

語法:

SELECT * FROM 表 GROUP BY 列

HAVING 子句

在 SQL 中增加 HAVING 子句原因是,WHERE 關鍵字無法與合計函數一起使用。

語法:

SELECT 列, aggregate_function(列)
FROM 表
WHERE 列 operator 值
GROUP BY 列
HAVING aggregate_function(列) operator 值


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM