我有两个表: t1 具有以下列:name | key | length
t2 具有以下列:name | country.
我需要按国家/地区选择所有长度> 2000的不同键。所以,我做了
SELECT count(distinct key), country
from db.t1
inner join db.t2
on t1.name=t2.name
where length>2000
group by country;
但是,当我进行查询时:
SELECT count(distinct key)
from db.t1
where Length>2000;
我应该得到相同的结果,但我得到不同的结果。例如,在第一个查询中,我得到 125494,而在第二个查询中,我得到:121653。
造成这种不同结果的原因是什么?知道 are 中有一些country
字段''
。在我看来,它们并没有作为一个组出现,我数了数,发现它们是 134 条记录。但我找不到原因。