SELECT 語句完整語法與選項速查表SELECT
[STRAIGHT_JOIN]
[SQL_SMALL_RESULT]
[SQL_BIG_RESULT]
[HIGH_PRIORITY]
[DISTINCT | DISTINCTROW | ALL]
select_expr [, select_expr ...]
[INTO {OUTFILE | DUMPFILE} 'file_name' export_options]
[FROM table_references
[WHERE where_condition]
[GROUP BY {col_name | expr | position} [ASC | DESC], ...]
[HAVING where_condition]
[ORDER BY {col_name | expr | position} [ASC | DESC], ...]
[LIMIT {[offset,] row_count | row_count OFFSET offset}]
[PROCEDURE procedure_name(argument_list)]
]
[FOR UPDATE | LOCK IN SHARE MODE]
| 選項 | 功能 |
|---|---|
STRAIGHT_JOIN | 強制按 FROM 子句順序連接表 |
SQL_SMALL_RESULT | 結果集較小時提示優化器用暫存表 |
SQL_BIG_RESULT | 結果集較大時提示優化器用磁碟暫存表 |
HIGH_PRIORITY | 提高查詢優先級(僅限 MyISAM) |
DISTINCT/DISTINCTROW | 去除重複行 |
INTO OUTFILE/DUMPFILE | 結果導出檔案 |
FOR UPDATE | 鎖定選取行(排他鎖) |
LOCK IN SHARE MODE | 共享鎖,允許並發讀取 |
FROM / JOIN — 確定資料來源WHERE — 列級過濾GROUP BY — 分組HAVING — 組級過濾SELECT — 投影欄位DISTINCT — 去重ORDER BY — 排序LIMIT — 限制輸出行數提示: 理解執行順序有助於撰寫正確邏輯(如 WHERE 不能用別名,HAVING 可用聚合函數)。