首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

《MySQL必知必會》第四章:SELECT 查詢基礎與數據檢索技巧

     編輯:MySQL 綜合教學

《MySQL必知必會》第四章:SELECT 查詢基礎與數據檢索技巧

系統講解 SELECT 語句核心子句、通配符使用、去重、分頁、完全限定名等檢索基本功。

核心語法結構

SELECT [DISTINCT] select_list
FROM table_name
[WHERE condition]
[ORDER BY order_list [ASC|DESC]]
[LIMIT [offset,] row_count];

關鍵知識點

  1. 無序性: 無 ORDER BY 時返回順序不確定(受插入順序、頁分裂、重用空間影響),切勿依賴默認順序。
  2. 大小寫不敏感: SQL 關鍵字不區分大小寫;標識符(庫/表/列)在 Linux 下區分大小寫,Windows 不區分(取決於 lower_case_table_names)。
  3. 空白字符: SQL 忽略多餘空白,建議多行縮進寫法提升可讀性。
  4. 原始數據: SELECT 返回未格式化原始值,格式化屬於應用層職責。

實用技巧

1. 避免 SELECT *

  • 增加網絡/IO/內存開銷
  • 無法使用覆蓋索引
  • 表結構變更導致應用報錯
  • 例外: 臨時調試、需所有列且表結構穩定

2. 去重 DISTINCT

SELECT DISTINCT vend_id FROM products;           -- 單列去重
SELECT DISTINCT vend_id, prod_price FROM products; -- 組合去重(兩列全同才算重複)

注意: DISTINCT 作用於所有選中列,不能部分使用。

3. 分頁 LIMIT

LIMIT 5;           -- 前 5 行
LIMIT 3, 4;        -- 跳過 3 行,取 4 行(第 4-7 行)
LIMIT 4 OFFSET 3;  -- 標準 SQL 寫法,等價上行

深分頁性能陷阱: LIMIT 1000000, 10 需掃描 100 萬行,優化方案:WHERE id > last_max_id LIMIT 10(游標分頁)。

4. 完全限定名

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