SELECT 敘述句 (SQL SELECT Statement)
SELECT 很可能是最常用到的 SQL 語句,它是用來從資料庫取得資料 (這個動作我們通常稱之為「查詢 (Query)」),資料庫依 SELECT 查詢的要求會返回一個結果資料表 (Result Table),我們通常稱之為資料集 (Result-Set)。SELECT 語法 (SQL SELECT Syntax)
SELECT 敘述句主要由兩部分構成,第一部分是要「拿什麼」資料 (若有多項用逗號隔開);第二部分則為「從哪拿」。SELECT table_column1, table_column2, table_column3··· FROM table_name;
SELECT 查詢實例 (SQL SELECT Example)
假設我們想從下面的「customers」資料表中取得顧客的姓名 (Name) 及電話 (Phone):| C_Id | Name | City | Address | Phone |
|---|---|---|---|---|
| 1 | 張一 | 台北市 | XX路100號 | 02-12345678 |
| 2 | 王二 | 新竹縣 | YY路200號 | 03-12345678 |
| 3 | 李三 | 高雄縣 | ZZ路300號 | 07-12345678 |
我們可以下這個 SELECT 查詢敘述句:
SELECT Name, Phone FROM customers;
最後返回的結果 (資料集) 會像這樣:
| Name | Phone |
|---|---|
| 張一 | 02-12345678 |
| 王二 | 03-12345678 |
| 李三 | 07-12345678 |
SELECT *
如果我們想一次取得整張資料表裡所有的資料我們可以在 SELECT 語句裡用「*」這個特殊符號。SELECT * FROM customers;
該 SELECT 查詢返回的資料集會是:
| C_Id | Name | City | Address | Phone |
|---|---|---|---|---|
| 1 | 張一 | 台北市 | XX路100號 | 02-12345678 |
| 2 | 王二 | 新竹縣 | YY路200號 | 03-12345678 |
| 3 | 李三 | 高雄縣 | ZZ路300號 | 07-12345678 |
若非必要,我們應該盡量避免使用SELECT *,因為一次取得整張資料表會比較耗費系統資源,記住一個原則,取得您需要的資料就好,不多拿也不少拿。例如若只想知道客戶的電話不需要連他的住址也一起取得。