userid
2つの列と。を持つ単純なテーブルがあるとしましょうemail
。
値が複数の行に存在するすべてのemail
値を変更するにはどうすればよいですか?email
たとえば、email
値blah@blah.com
が4行に存在するとします。email
これらの4行を削除するのではなく、4行すべての列をに設定したいだけです''
。
MySQLでそれを行うクエリは何ですか?
Update t
Set t.Email = ''
Where t.Email in (Select email from YourTable group by email having count(*)>1)
このリクエストは、複数の行に存在するメールを取得します:
SELECT email, COUNT(email) AS c
FROM table
GROUP BY email
HAVING c > 1
したがって、更新クエリで使用する必要があります。
UPDATE table SET email = ''
WHERE email IN (
SELECT email, COUNT(email) AS c
FROM table
GROUP BY email
HAVING c > 1
)