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

  • AverageBroTV

    AverageBroTV

    20 Mart 2013
  • ecf150king

    ecf150king

    20 Ocak 2006
  • ThreadBanger

    ThreadBanger

    2 Mart 2007