2013-02-22 40 views
0

我在SQLSERVER有數據類似下面匹配當前記錄前面和後面的

Employecode Jobcode startTime EndTime 
1001   01  10:30  15:00 
1001   02  15:30  18:00 
1002   01  09:00  13:00 

它不是自動遞增ID

我想匹配一個和下一個記錄當前記錄數據庫是否其employecode與上一個或下一個匹配或不匹配。

我想在php中這樣做。

請幫我解決這個問題。

+0

當前記錄是什麼?哪一列確定下一個/上一個行? – fancyPants 2013-02-22 12:35:53

+0

數據具有什麼排序特性?您示例中的數據顯然不是按時間排序的... – chrisb 2013-02-22 12:36:20

+0

也是什麼版本的SQL Server? SQL2012增加了一些功能,使窗口功能變得簡單。可以在以前的版本中完成,但方法會有所不同。 – 2013-02-22 12:57:08

回答

0

如果函數LAG()和LEAD()可用,請檢查您的SQL SERVER文檔版本。您可以使用LAG()從prev中獲取值。 row和LEAD()從下一行開始。然後將它與您當前的行進行比較。提交問題時創建表格和數據總是個好主意。您可以使用SQL小提琴:http://sqlfiddle.com/