Я просмотрел другие вопросы и не могу найти то, что я ищу. У меня есть база данных SQL, а в ней - таблица InventoryAllocations. В таблице у меня есть несколько записей для DocumentID и вы хотите получить последнюю запись для каждого уникального DocumentID. Я могу получить только один, делаяSQL SELECT TOP 1 ДЛЯ КАЖДОЙ ГРУППЫ
SELECT top(1) [UID]
,[RecordStatusID]
,[CreatedDate]
,[CreatedTime]
,[CreatedByID]
,[OperationType]
,[InventoryLocationID]
,[DocumentTypeID]
,[DocumentID]
,[SOJPersonnelID]
,[InventorySerialisedItemID]
,[TransactionQty]
,[TransactionInventoryStatusID]
,[Completed]
,[CreatedByType]
,[RecordTimeStamp]
FROM [CPData].[dbo].[InventoryAllocations]
order by DocumentID desc
но я хочу, чтобы вернуть список, содержащий все уникальные DocumentID's.I надеюсь, что вы можете помочь. Many Thanks Hannah x
Вы пробовали следуя инструкциям на http://stackoverflow.com/questions/9618559/select-top-record-for-each-year? Я считаю, что TOP OVER PARTITION BY - это в основном шаблон, который вам нужен здесь. – Eterm
Последняя запись - согласно колонке (-ам)? – jarlh
Последняя запись может быть определена либо самой новой CreatedDate, либо самым большим UID для каждого уникального DocumentID. – Hannah