削除する必要がある冗長データを含む MySQL テーブルがいくつかあります。例えば:
id email date data...
1 email1@gmail.com 2012-01-01 my_data
2 email2@gmail.com 2012-01-01 my_data
3 email1@gmail.com 2012-01-02 my_data
4 email1@gmail.com 2012-01-02 my_data (redundant)
5 email2@gmail.com 2012-01-02 my_data
冗長な行を削除する必要がありますが、最初にそれらを選択したいと思います。これは StackOverflow で見つけましたが、メール アドレスが必要です
SELECT *
FROM `my_table`
WHERE `id` IN (SELECT `id`
FROM `my_table`
where `email` = 'email1@gmail.com'
group by `date`
HAVING count(*) > 1)
上記のように、埋め込みクエリで WHERE 修飾子を使用しないクエリを使用して、すべてのメール アドレスを分類できるクエリを教えてください。
クエリは SELECT クエリにすることができます。PHPMyAdmin で行を手動で削除してもかまいません。