SQL Server Management Studio 2010 を使用しています。
レコードに値の最初の出現が含まれている場合、列に入力するクエリが必要です。
クエリが返すテーブルは非常に大きいので、要点を理解するためにふりをした列を使用します。私のクエリは現在、次のようなテーブルを返します
| ROW | ItemNumber | DateOpen | Status |
| 1 | 10045 | 5/5/2005 | Open |
| 2 | 10045 | 5/5/2005 | Open |
| 3 | 10046 | 5/5/2005 | Open |
| 4 | 10046 | 5/5/2005 | Open |
| 5 | 10046 | 5/5/2005 | Open |
ItemNumber の最初の出現を識別するのに役立つと考えて、クエリに行インジケーターを既に追加しました。レコードが最初に出現する場合は、X をマークする新しい列が必要です。
私はこれまでのところこれを持っています
DECLARE @ItemData Table(itemRow BIGINT, itemNumber BIGINT, DateOpen VARCHAR(15), status VARCHAR(15))
INSERT INTO @ItemData (itemRow, ItemNumber, DateOpen, Status)
SELECT Row_Number() OVER(ORDER BY Cm_ItemNumber) AS 'ROW'
,Cm_ItemNumber AS ItemNumber
,Dates_DateOpen AS DateOpen
,St_Status AS Status
FROM db_Items
JOIN db_Dates ON Dates_Item = Cm_ItemID
JOIN db_Status ON St_ID = Cm_StatusID
Select * from @ItemData
テーブルにスローされてから個別に選択される理由は、実際にはユニオンとクエリにさらに多くのものがあり、一意のチェッカーを実行して列に追加する必要があることに気付いたとき、最も簡単な方法は「事後」タイプのもので、その Select * from @ItemData
部分に入ります。