天天看點

MySQL常用基礎用法集錦

大家還記得我們之前介紹過MySQL的執行順序嗎?MySQL資料插入INSERT INTO與條件查詢WHERE的基本用法(二)。本節課我們将給大家介紹MySQL中常用的幾個關鍵字SELECT/HAVING/DISTINCT/ORDER BY/LIMIT,接下來我們會按照MySQL中的執行順序一一進行介紹。

MySQL常用基礎用法集錦

1、SELECT

SELECT是MySQL查詢語句中使用最多的關鍵字,表示從查詢語句中取出特定字段或者結果,它有以下幾種基本用法。

用法一:取出某個表的所有字段

SELECT * FROM table_name;           

複制

注:通常取出某個表的所有字段用星号(*)表示。

例如:取出titanic表中的所有字段

MySQL常用基礎用法集錦

用法二:取出某幾個特定字段

SELECT 字段1,字段2,字段3,... FROM table_name;           

複制

例如:取出titanic表中的乘客編号,乘客姓名,性别,年齡資訊。

MySQL常用基礎用法集錦

用法三:取出指定計算結果

SELECT count(*) from table_name;           

複制

例如:計算titanic表所有行記錄總數

MySQL常用基礎用法集錦

注:計算某個表的所有行記錄總數可以使用count(*)或count(1)表示。

用法四:按照特定分組取出對應結果資料

SELECT 分組字段,聚合函數 
FROM table_name
GROUP BY 分組字段;
           

複制

例如:分組計算乘客生存與死亡的記錄數。

MySQL常用基礎用法集錦

2、HAVING

HAING關鍵詞一般與聚合函數結合使用,它的基本文法如下。

SELECT 分組字段,聚合函數 FROM table_name
GROUP BY 分組字段
HAVING 聚合函數(條件);           

複制

例如,找出人數大于200的船艙等級。

MySQL常用基礎用法集錦

可以看到人數大于200的船艙等級分别是1和3,人數分别為216和491。

注:由于在MySQL中先執行聚合函數的計算,是以HAVING之後可以直接使用聚合函數計算結果的别名,當然也可以使用聚合函數COUNT(PassengerId)>200表示。

3、DISTINCT

DISTINCT是MySQL中去重常用關鍵詞,通常可以對某個或某幾個特定字段進行去重操作。

用法一:對單個字段進行去重

SELECT DISTINCT 字段 FROM table_name;           

複制

例如,對titanic表中乘客年齡進行去重。

MySQL常用基礎用法集錦

說明titanic表中共有71個不重複年齡。

用法二:對特定幾個字段進行去重

SELECT DISTINCT 字段1,字段2,字段3 FROM table_name;           

複制

例如,對titanic表中船艙等級,乘客姓名進行去重。

MySQL常用基礎用法集錦

結果共865行記錄,這裡是按照船艙等級和乘客姓名兩個次元進行去重的,是以去重後的記錄數通常會比單一次元去重結果數量更多。

4、ORDER BY

ORDER BY表示對結果進行排序操作,它的基本用法如下。

SELECT 字段1,字段2,字段3,...  FROM table_name
ORDER BY 排序字段 ASC/DESC           

複制

例如,我們對titanic表中乘客年齡從大到小進行排序,展示出客戶姓名與年齡。

MySQL常用基礎用法集錦

在ORDER BY中對字段進行升序排列(從小到大),使用ORDER BY 字段名 ASC ;

如果要對字段進行降序排列(從大到小),則使用ORDER BY 字段名 DESC。

5、LIMIT

表示對結果按指定數量輸出,它的基本使用方法如下。

SELECT * FROM table_name
LIMIT 100;           

複制

例如,展示titanic表中前100行記錄。

MySQL常用基礎用法集錦

通常LIMIT 與ORDER BY 結合使用。

例如,對年齡進行降序排列,同時輸出前100行記錄。

MySQL常用基礎用法集錦

通過限制之後,輸出的結果就隻有按年齡降序排列後的前100行記錄。