2016-05-26 45 views
0

我有一張表,我試圖用一種奇怪的方法過濾出來。這是表我有SQL當兩列的行相同而其他列的行不同時

PHONE  EFFDATE  ENDDATE 
6093852442 8/15/2007 2/2/2008 23:59 
**6093852442 5/9/2008 7/14/2009 23:59 
6093852442 5/9/2008 12/31/2099** 
5745378900 4/10/2012 5/21/2012 23:59 
5745378900 2/4/2016 12/31/2099 
7173643250 3/24/2008 3/21/2013 23:59 
7173643250 3/22/2013 12/31/2099 
**3097402606 12/4/2007 1/23/2011 23:59 
3097402606 12/4/2007 12/31/2099** 

每當電話和EFFDATE相同日期和結束日期有不同的價值觀,這讓我只有這個數據如下:

 PHONE  EFFDATE  ENDDATE 
    6093852442 5/9/2008 7/14/2009 23:59 
    6093852442 5/9/2008 12/31/2099 
    3097402606 12/4/2007 1/23/2011 23:59 
    3097402606 12/4/2007 12/31/2099 

請讓我知道我該怎麼辦呢。謝謝

+0

電話和EFFDATE相同?????? – SSD

+0

你的選擇是什麼? – SSD

回答

0

試試這個

SELECT phone, 
     effdate, 
     enddate 
FROM  my_table table1 
WHERE EXISTS (SELECT * 
       FROM my_table table2 
       WHERE table1.phone = table2.phone 
        AND table1.effdate = table2.effdate 
        AND table1.enddate <> table2.enddate) 
ORDER BY phone, 
     effdate, 
     enddate; 

我猜想**字符那裏才指示哪些元素應該在輸出中顯示。

+0

我試圖做到這一點,但它給了我那些** –

+0

它的工作,謝謝 –

相關問題