SELECT文で取得するカラム名を指定する箇所でサブクエリを使って、countriesテーブル内のすべての国について,対応するcountries.idをusers.country_idに持つユーザー数を取得したいです。
usersテーブル
id | name | country_id |
---|---|---|
1 | brian | 2 |
2 | emma | 2 |
3 | aubrey | 2 |
4 | mitsuru | 1 |
5 | brandon | 2 |
6 | shunji | 1 |
countriesテーブル
id | name |
---|---|
1 | Japan |
2 | USA |
3 | China |
4 | India |
以下のSQLを作成して実行したのですが、「Japan,2 USA,4 China 0」という結果になり、Indiaのデータが取得できません。
SQL
1select name, 2( 3 select count(*) 4 from users 5 where country_id = c.id 6) as user_count 7from countries as c;
「Japan,2 USA,4 China 0 India 0」という結果を得るためには、上記のSQLをどのように修正すればよろしいでしょうか?
よろしくお願いいたします。