SORU
21 Ocak 2010, PERŞEMBE


Bulma SQL Server yinelenen satırları

Örgütlerin SQL Server bir veritabanı var, ve yinelenen satırları çok var. Tüm bu ve yapay genler miktarı kapmak için bir select deyimi çalıştırın, ama aynı zamanda her örgüt ile ilişkili kimlikleri iade etmek istiyorum.

Bir deyim gibi

SELECT     orgName, COUNT(*) AS dupes  
FROM         organizations  
GROUP BY orgName  
HAVING      (COUNT(*) > 1)

Geri dönmek gibi bir şey olacak

orgName        | dupes  
ABC Corp       | 7  
Foo Federation | 5  
Widget Company | 2 

Ama onların da Kimlikleri kapmak istiyorum. Bunu yapmak için herhangi bir yolu var mı? Belki gibi

orgName        | dupeCount | id  
ABC Corp       | 1         | 34  
ABC Corp       | 2         | 5  
...  
Widget Company | 1         | 10  
Widget Company | 2         | 2  

Bunun sebebi, orada da ayrı bir tablo kullanıcılarının bu link bu örgütler, ve ben gibi kullanarak onları (bu nedenle kaldırmak yapay genler böylece kullanıcılar bağlantı için aynı örgüt yerine geçerli düzenlemeler). Ama her şeyi berbat etmeyeyim o kısmı elle isterim, ama hala bir açıklama kullanıcı liste boyunca gidebilmek için tüm geçerli olan düzenlemeler Kimliklerini iade ihtiyacım olacak.

Herhangi bir yardım büyük mutluluk duyacağız. Teşekkür ederim :)

CEVAP
21 Ocak 2010, PERŞEMBE


select o.orgName, oc.dupeCount, o.id
from organizations o
inner join (
    SELECT orgName, COUNT(*) AS dupeCount
    FROM organizations
    GROUP BY orgName
    HAVING COUNT(*) > 1
) oc on o.orgName = oc.orgName

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dopelives

    Dopelives

    30 Temmuz 2009
  • Thom Hall

    Thom Hall

    24 Kasım 2006
  • warningthepeople

    warningthepe

    21 EYLÜL 2011