首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 資料查詢完全指南:從基礎 SELECT 到進階排序與統計

     編輯:MySQL 資料庫相關知識

核心概念:SELECT 語句

在 MySQL 中,SELECT 語句是從資料表檢索資料的核心工具。其基本語法結構為:

SELECT 檢索欄位 FROM 資料表名稱 WHERE 條件 (可選)

其中 * 代表選取所有欄位。以下範例均基於先前建立的 mytable 資料表(包含 name、sex、birth、birthaddr 欄位)。

1. 查詢所有資料

使用 SELECT * FROM mytable; 可取得完整資料集:

+----------+------+------------+----------+
| name     | sex  | birth      | birthaddr |
+----------+------+------------+----------+
| abccs    | f    | 1977-07-07 | china     |
| mary     | f    | 1978-12-12 | usa       |
| tom      | m    | 1970-09-02 | usa       |
+----------+------+------------+----------+

2. 修正錯誤資料 (UPDATE)

若發現 tom 的出生日期有誤,應為 1973-09-02,可使用 UPDATE 修正:

UPDATE mytable SET birth = "1973-09-02" WHERE name = "tom";

執行後再次查詢即可驗證修正結果。

3. 條件篩選特定列 (WHERE)

透過 WHERE 子句精準鎖定目標列:

  • 單一條件: SELECT * FROM mytable WHERE name = "tom";
  • 複合條件 (AND/OR): SELECT * FROM mytable WHERE sex = "f" AND birthaddr = "china";

4. 選取特定欄位

僅需特定資訊時,明確列出欄位名稱,以逗號分隔:

SELECT name FROM mytable;           -- 僅姓名
SELECT name, birth FROM mytable;    -- 姓名與生日

5. 結果排序 (ORDER BY)

依欄位值排序,預設遞增 (ASC),可指定遞減 (DESC):

-- 依生日由舊到新
SELECT name, birth FROM mytable ORDER BY birth;

-- 依生日由新到舊
SELECT name, birth FROM mytable ORDER BY birth DESC;

6. 資料統計與分組 (COUNT, GROUP BY)

COUNT() 函數用於計算非 NULL 列數:

  • 總筆數: SELECT COUNT(*) FROM mytable;
  • 分組統計 (性別人數): SELECT sex, COUNT(*) FROM mytable GROUP BY sex;

GROUP BY 子句是分組統計的關鍵,它將相同 sex 值的列歸為一組再計數。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved