大家...目前我有一個表,如下..SQL Server 2005組由相同列但日期和時間不同?
DATE BATCHNO PRODCODE
----------------------------------------------
31/12/2009 23.53 10859 2003P
01/01/2010 00.04 10860 2003P
01/01/2010 00.06 10861 2003P
01/01/2010 00.13 10862 2003P
01/01/2010 00.30 10863 1259
01/01/2010 03.02 10864 639B
01/01/2010 03.13 10865 639B
01/01/2010 03.20 10866 639B
01/01/2010 04.13 10867 2003P
01/01/2010 04.20 10868 2003P
01/01/2010 04.30 10863 2003P
以上是我現在已經被..每當有新BATCHNO和BATCHNO是由1增加產生的DATE的表的例子.. PRODCODE是產品的機器製造產品的代碼,並說產品2003P完成製造,它會自動去其他產品,如1259 ...
我想計算這些數據到下面預期結果:
DATE PRODCODE
----------------------------------------------
31/12/2009 23.53 2003P
01/01/2010 00.13 2003P
01/01/2010 00.30 1259
01/01/2010 00.30 1259
01/01/2010 03.02 639B
01/01/2010 03.20 639B
01/01/2010 04.13 2003P
01/01/2010 04.30 2003P
意思是31/12/2009 23.53是產品2003P和01/01/2012的開始時間00.13是產品2003P的停止時間,而產品1259是特殊的,因爲01/01/2010 00.30只產生1產品移動到其他產品之前..基本上我不能使用組,因爲它會由所有產品是相同的代碼組..所以問題是檢測特定產品代碼的開始時間和停止時間。 。這怎麼能完成?這是SQL Server 2005 ...
謝謝大家..
我認爲你不能保證通過'PRODCODE'排序的行會自動'[日期]排序'其中'PRODCODE'是一樣的。您需要明確添加'[DATE]'作爲排序標準:'row_number()over(按PRODCODE,[DATE]排序)爲rn2'。 –
@AndriyM - 好點。謝謝。 –
感謝你們兩位。意味着上述查詢是正確的? – newbieHQ