私はそのようなテーブルを持っています(sqlzoo.netから取得)、
+-------------+-----------+------------+------------+-------------------+
| name | continent | area | population | gdp |
+-------------+-----------+------------+------------+-------------------+
| Afghanistan | Asia | 652230.000 | 25500100 | 20343000000.00000 |
| Albania | Europe | 28748.000 | 2831741 | 12960000000.00000 |
+-------------+-----------+------------+------------+-------------------+
...
クエリは、
すべての人口が 25000000 未満である大陸に属する国をそれぞれ見つけます。名前、大陸、人口を表示します
私は次のようにクエリを壊しました、
- すべての人口が 25000000 未満のすべての大陸を検索します(サブクエリ)
- これらの大陸から国 (外側のクエリ)の詳細 (名前、大陸、人口) を表示します。
クエリを書き込もうとすると、次のようになります。
外側のクエリは問題ないようですが、
select name,continent,population from world where continent IN
内部クエリは私を混乱させています。
(select continent from world where population<25000000)
大陸内のすべての人口が制約を満たすかどうかをチェックしていないため、これは正しくありません (大陸内のすべての行をチェックし、すべてを満たす場合はIN
リストに大陸名を含めます)。// C
SQL でそれを行うにはどうすればよいですか?
注:有用なリンクがある場合は、それらを含めてください。クエリがどのように実行されるかを正確に説明する洞察 (「for
C でループがどのように機能するか - 割り当て、インクリメント、チェック、ループ」のように明確なもの) は非常に役立ちます。