SELECT attribute_list
FROM table_name
[WHERE condition];
attribute_list:要回傳的欄位/運算式,逗號分隔;* 代表所有欄位。table_name:來源資料表(或子查詢)。WHERE condition:篩選條件,省略則回傳所有列。| 欄位 | 說明 |
|---|---|
| name | 國家名稱 |
| region | 所屬地區 |
| area | 面積 (平方公里) |
| population | 人口數 |
| gdp | 國內生產毛額 |
SELECT name, region, population FROM bbc;
SELECT population FROM bbc WHERE name = 'France';
SELECT name FROM bbc WHERE name LIKE 'D%';
找出名稱以 D 開頭的國家。
SELECT name, population/area AS density
FROM bbc
WHERE area > 5000000;
列出面積超過 500 萬平方公里國家的人口密度。
SELECT name, region
FROM bbc
WHERE area < 2000
AND gdp > 5000000000;
找出面積小於 2000 平方公里但 GDP 超過 50 億的「小而富」國家。
| 運算子 | 意義 | 範例 |
|---|---|---|
= | 等於 | name = 'France' |
<> / != | 不等於 | region <> 'Europe' |
>, >=, <, <= | 大於/大於等於/小於/小於等於 | area > 5000000 |
BETWEEN ... AND ... | 區間(含邊界) | population BETWEEN 1000000 AND 5000000 |
IN (...) | 集合成員 | region IN ('Asia','Europe') |
LIKE | 模式比對 | name LIKE 'A%' |
IS NULL / IS NOT NULL | 空值判斷 | gdp IS NULL |
對照 bbc 表嘗試: