在 WHERE 與 SELECT 中使用子查詢

在 SQL 中進行資料連接

Maham Faisal Khan

Senior Content Developer, DataCamp

在 WHERE 中的子查詢語法

  • 先前看到的半連接與反連接都在 WHERE 中包含子查詢
  • WHERE 是最常見的子查詢位置

使用 WHERE IN 的查詢語法

SELECT *
FROM some_table
WHERE some_numeric_field IN (4, 8, 12);
在 SQL 中進行資料連接

在 WHERE 中的子查詢語法

SELECT *
FROM some_table
WHERE some_field IN 
       (include subquery here);
在 SQL 中進行資料連接

在 WHERE 中的子查詢語法

SELECT *
FROM some_table
WHERE some_field IN 
    (SELECT some_numeric_field
     FROM another_table
     WHERE field2 = some_condition);
在 SQL 中進行資料連接

在 SELECT 中的子查詢

SELECT DISTINCT continent
FROM states;
|---------------|
| continent     |
|---------------|
| Africa        |
| Asia          |
| Europe        |
| North America |
| Oceania       |
|---------------|
在 SQL 中進行資料連接

在 SELECT 中的子查詢

SELECT DISTINCT continent,

(SELECT COUNT(*) FROM monarchs
WHERE states.continent = monarch.continent) AS monarch_count FROM states;
| continent     |   monarch_count |
|---------------|-----------------|
| Africa        |               0 |
| Asia          |               2 |
| Europe        |               2 |
| North America |               0 |
| Oceania       |               0 |
在 SQL 中進行資料連接

一起來練習吧!

在 SQL 中進行資料連接

Preparing Video For Download...