0

假设我有一个数据库,其中有一个包含国家列 (COUNTRIES) 的表,一个包含州列和该州所在国家/地区列 (STATES) 的表,以及一个包含城市列的表以及该城市所在州的列(CITIES)。我想写一个查询,输出一个国家,那个国家的一个州,以及那个州有多少个城市

USA     Ohio    65
USA     Maine   52
           etc.....

我的外部查询类似于

SELECT COUNTRIES.country, STATES.state, COUNT(CITIES.city)
FROM COUNTRIES, STATES, CITIES
WHERE COUNTRIES.country = STATES.country AND 
      STATES.city = CITIES.city AND 
      EXISTS...

在那个存在的语句中,我想编写一个嵌套子查询,它将所有城市拉出一个特定的州,以便 COUNT 函数进行计数。有没有办法让我写一个变量或类似的东西,只为某个州拉出城市?

对不起,如果这是一个令人困惑的例子,但我试图写这个的实际查询更难以解释。基本上(使用这个例子)我的子查询是拉出每个州的每个城市。我需要改变这一点,因为如果我想计算亚利桑那州的城市数量,我不希望西雅图或得梅因突然出现。

4

1 回答 1

1
Select Country, State, count(city) as Citycount
from Countries
inner join States on countries.country = states.country
inner join cities on states.state = cities.state
group by country, state
于 2013-07-25T13:36:35.593 回答