私は2つのテーブルを持っています:次の列を持つ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を取得し、2番目のクエリでは121653を取得します。
この異なる結果の理由は何ですか?areにいくつかのフィールドがあることを知っていcountry
ます''
。私にはそれらがグループとして表示されていないようで、私はそれらを数えたところ、134レコードであることがわかりました。でも理由がわかりません。