2013-03-22 53 views
-3

嗨,你們再次需要你們的專業知識.. 一位客戶訪問一家銀行,一位代理幫助了他的賬戶。同一天,同一個客戶在同一天回來獲利,另一位收銀員幫助他/她。所以有兩個或兩個以上的記錄,但只有一個應該算在內。 這是我正在考慮這樣做的方式,但它並不幫助我解決它..你們是否認爲......通常你的輸入是非常感謝......「明顯我失去了」..謝謝你們...... ..需要T-SQL邏輯思想

 SELECT CD.MEMACT, 
       CD.DATETIME,--DATETIME 
       CD.AG_ID, 
       RANK() OVER (PARTITION BY 
            CD.MEMACT, 
            CD.DATETIME, 
            CD.AG_ID 
          ORDER BY CD.DATETIME)RANKED 

      FROM MEM_ACT_TBL 
      WHERE CD.MEMACT='1024518' 
+0

你試圖實現什麼? – 2013-03-22 20:55:06

+0

你在尋找什麼樣的結果? – 2013-03-22 20:55:23

+0

你只想要最後一次訪問嗎?你在使用什麼數據庫平臺? – dugas 2013-03-22 20:55:55

回答

3
Select * 
from 
     (
     SELECT CD.MEMACT, 
      CD.DATETIME,--DATETIME 
      CD.AG_ID, 
      RANK() OVER (PARTITION BY 
           CD.MEMACT 
         ORDER BY CD.DATETIME)RANKED 

     FROM MEM_ACT_TBL 
     ) 
WHERE RANKED = 1 
     AND MEMACT='1024518' 

,應該讓你的第一個記錄。將訂單改爲CD.DATETIME DESC如果你想要最後一個記錄