SELECT .. SELECT/ja
From SQLZoo
| Language: Project:Language policy | English • 日本語 |
|---|
サブクエリ テーブル、導出テーブル、ネストしたクエリ
あるクエリの実行結果を別のクエリの中で利用できる。
FROM とサブクエリ
SELECT 文を FROM の行で使用できる。
次の場合、導出テーブル X は name と gdp_per_capita のフィールドを持つ。
内側の SELECT で求められた値は、外側の SELECT で使われる。
SELECTname,ROUND(gdp_per_capita) FROM (SELECTname, gdp/populationASgdp_per_capita FROMbbc)X WHEREgdp_per_capita>20000
注意)
- 内部の表は別名
Xが与えられている。 - 内側のクエリの一つ目のフィールド名は元の名前 name のまま。
- 内側のクエリの二つ目のフィールド名は別名 gdp_per_capita を与えられている。
IN とサブクエリ
ブータンBhutanと同じ地域region にある国を見つける
SELECT 文を WHERE の行で使うことが出来る。この例では、サブクエリの結果は地域regions のリスト(複数値)になる場合がある。
SELECTname FROMbbc WHEREregionIN (SELECTregionFROMbbc WHEREname='Bhutan')
相関サブクエリ
外側のクエリの値が内側のクエリに現れている場合、それは 相関サブクエリ である。
ある国の人口がその国の地域の人口の平均値の5倍を超える人口の国を表示する
SELECTname FROMbbcb1 WHEREpopulation> 5*(SELECTAVG(population)FROMbbc WHEREregion=b1.region)
次を参照:
Retrieved from "https://sqlzoo.net/w/index.php?title=SELECT_.._SELECT/ja&oldid=40063"