2013-10-14 88 views
-1

嘿傢伙我有兩個表T1和T2,T1有一個叫做時間的柱面,T2有兩個柱面日期和時間。按照方案複雜選擇比較

T1 
------------------- 
Time 
------------------- 
10:00 
11:00 
12:00 

T2 
------------------- 
Date  | Time 
------------------- 
2013-10-01 | 10:00 
2013-10-01 | 11:00 
2013-10-01 | 12:00 
2013-10-02 | 10:00 
2013-10-02 | 11:00 

我需要寫一個選擇返回2013年10月1日,因爲這一天的比賽中與ALL T1領域倍。這可能嗎?

+0

能告訴你,你已經嘗試過什麼至今? –

+2

「情結」總是引誘我,而我總是對我內心所感到的失望。 –

+0

我不知道如何開始。 –

回答

1

只要你有這將工作在T1

SELECT T2.Date 
FROM T2 
inner join T1 on T1.Time = T2.Time 
GROUP BY T2.Date 
HAVING COUNT(DISTINCT T1.Time) = 3 

或多個 「通用」,但少高性能的3個值:

SELECT T2.Date 
FROM T2 
INNER JOIN T1 on T1.Time = T2.Time 
GROUP BY T2.Date 
HAVING COUNT(DISTINCT T1.Time) = (select count(distinct Time) from T1); 

SqlFiddle

+0

第二個適合我的需求..謝謝兄弟 –