7 NİSAN 2010, ÇARŞAMBA
Bulma SQL bir tablo yinelenen deÄŸerleri
Kolay bir alan ile çiftleri bulmak için:
SELECT name, COUNT(email)
FROM users
GROUP BY email
HAVING ( COUNT(email) > 1 )
EÄŸer bir masa varsa
ID NAME EMAIL
1 John asd@asd.com
2 Sam asd@asd.com
3 Tom asd@asd.com
4 Bob bob@asd.com
5 Tom asd@asd.com
Bu sorgu, hepsi 5 ** aynı çünkü bize John, Sam, Tom, Tom verecektir.
İstediğim şey, ancak, 6* *aynı çiftleri elde etmektirvename
.
Yani, almak istiyorum "Tom", "Tom".
Buna ihtiyacım var sebep: bir hata yaptım, ve eklemek için izin name
email
yinelenen değerler. Şimdi/çiftleri kaldırmak ve değiştirmek için ihtiyacım var, ihtiyacım varbulabilirsinizonları ilk.
CEVAP
7 NİSAN 2010, ÇARŞAMBA
SELECT
name, email, COUNT(*)
FROM
users
GROUP BY
name, email
HAVING
COUNT(*) > 1
Sadece grup iki sütun
Not: ANSI standardına GÖRE bu GRUP içinde sigara toplanan tüm sütunlar için.
MySQL bunu önlemek için izin verir, ama sonuçlar tahmin edilemez:
- GROUP BY lname ORDER BY showing wrong results
- 12* *(kabul cevap olarak yorumlar)
Bunu PaylaÅŸ:
Nasıl Oracle bir tablo yinelenen değer...
Bulma yinelenen deÄŸerler MySQL...
Yinelenen bulmak için en kolay yolu bi...
Tabloya MySQL tablo SET HALÄ°NDE.. vs D...
Bulma SQL Server yinelenen satırları...