SQL:两个计数查询之间的差异

时间:2017-03-08 15:52:42

标签: sql

我在这个link上处理sql问题。简而言之,您有一个名为station的表。在此表中,架构为:

id: int
city: varchar(21)

city列可以重复。问题是:总城市(有重复)和没有重复的城市之间的差异。这是我的代码:

select
 (select count(*) from station) - 
 (select count(*) from (select city from station group by city) as c);

简而言之,我使用了两个查询:一个是sum all,一个是group by city的总和,然后再次计算该查询。 (有点复杂)。这是答案:

select count(city)- count(distinct city) from station;

我的问题是:在第二次查询时,数据库真正执行多少次查询。只有一两个查询作为我的代码。如果有两个查询,我们可以在同一个FROM子句中编写相同的查询吗?

1 个答案:

答案 0 :(得分:0)

不涉及子查询,并且对已过滤的行进行聚合。

所以回答你的问题:只有一个查询。