私はshop_id、name、およびpromotion_codeを含むテーブルを持っています。私はshop_idごとにレコードの量を取得したいが、promotion_codeが複数回使用されるいくつかの重複レコードがある。私はこれらを無視したい。GROUP BYで重複を無視する
私が試してみました:
SELECT shop_id, count(*) as total_entries FROM tbl GROUP BY shop_id
をこれは私に正しい構造を与えるが、それはすべての重複行をカウントしません。
SELECT shop_id, count(*) as total_entries FROM tbl GROUP BY promotion_code, shop_id
しかし、これは結果として私にすべてゼロのを与える:だから私は、私が最初にpromotion_codeにそれらをグループ化してみてください、その後、shop_idにしようと思いました。
は、いくつかのサンプル・テーブル・データ、および予想される結果を追加します。 (フォーマットされたテキストと同様に) – jarlh
Btw、投稿されたSelectのゼロを返すことは不可能です。 – dnoeth