SORU
23 Kasım 2009, PAZARTESİ


MySQL bir sütunda aynı değere sahip olan satırları bulmak

[Üye] bir tabloda, bazı satırlar email sütun için aynı değere sahip.

login_id | email
---------|---------------------
john     | john123@hotmail.com
peter    | peter456@gmail.com
johnny   | john123@hotmail.com
...

Bazı insanlar farklı bir login_id ama aynı e-posta adresi, benzersiz bir kısıtlama bu sütun üzerine kuruldu. Şimdi bu satırları bulmak ve eğer kaldırılması gerekir olup olmadığını görmek istiyorum.

Ne SQL deyimi bu satırları bulmak için kullanmalıyım? (MySQL 5)

CEVAP
23 Kasım 2009, PAZARTESİ


Bu sorgu alıştılar nasıl e-posta adresleri listesi ve, en çok kullanılan adresler ilk olarak verecektir.

select email, count(*) as c from table group by email having c >1 order by c desc

Eğer tam bir satır varsa

select * from table where email in (
    select email from table group by email having count(*) > 1
)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Numberphile

    Numberphile

    15 EYLÜL 2011
  • Sarah's YouTube Channel

    Sarah's YouT

    27 Temmuz 2009
  • videoisunrelated

    videoisunrel

    5 Mart 2009