2012-09-27 14 views
5

Bir sütunun aynı, ancak diğerinin farklı olduğu bir tablodaki olayları bulmak istiyorum.sql sunucu seçme sorgusu bir sütun aynı ve diğeri farklı

Örnek tablosu: Takım farklıdır henüz hafta çok takım gibi bir şey değil eşit ekip yapar hala aynıdır, ancak hafta eşit hafta yapıyor nerede

id team week 
1  1  1 
1  2  1 
2  2  1 
2  1  2 

Bütün kimlikleri bulacaksınız bir sorgu istiyorum.

Temel olarak, aynı hafta içinde herhangi bir kimliğin değişip değişmediğini bilmek isterim, bunu nasıl yaparım?

+0

Örnek verileriniz için istenen sonuçlar nedir? –

+0

id = 1, hafta = 1 – kqlambert

+0

10 gibi bir şey Ya da, Yaroslav'un ​​tavsiyelerini takip edin ve her zaman denediklerini yayınlayın. Bir şey denemediysen, bir şey dene! –

cevap

6
SELECT 
    t1.id, 
    t1.week 
FROM 
    YourTable t1 
    JOIN YourTable t2 
     ON t1.ID = t2.ID 
     AND t1.team < t2.team 
     AND t1.week = t2.week 
+0

Teşekkürler, tabloya kendi başıma katılmak için hiç olmadı. – kqlambert

+0

@Richardakacyberkiwi İyi bir nokta ... bu aynı uyumsuzluğun iki kez iade edilmesini engeller; güncellenmiş. –

+0

@Mic İyi çocuk, +1 :) – RichardTheKiwi

0
SELECT ID 
, COUNT(DISTINCT TEAM) AS CNT_TEAM 
, COUNT(DISTINCT WEEK) AS CNT_WEEK 
FROM TABLENAME 
GROUP BY ID 
HAVING COUNT(DISTINCT TEAM) > 1 
AND COUNT(DISTINCT WEEK) = 1 
0

böyle bir şey?

SELECT distinct id 
FROM TeamWeek 
GROUP BY id, week 
HAVING Count(team) > 1 
İlgili konular