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

  • andony5589

    andony5589

    7 Aralık 2011
  • Call Me Howard

    Call Me Howa

    18 AĞUSTOS 2012
  • Maschine Tutorials

    Maschine Tut

    15 ŞUBAT 2011