Я добавил таблицу в базу данных для нашей системы ERP для отслеживания информации, связанной с датой отправки, и мне нужно идентифицировать первую и последнюю записи даты и времени.Таблица заполняется триггером, который у меня есть в другой таблице, и заполняется датой, когда изменение было записано обратно в базу данных.
SELECT
TOP (100) PERCENT
SalesOrder,
MIN(NewShipDate) AS NewShipDate,
MAX(OldShipDate) AS OldShipDate
FROM dbo.ShipDateHistory
GROUP BY SalesOrder
Как и ожидалось, MIN (NewShipDate) возвращает минимальное значение;проблема в том, что в одну и ту же дату может быть несколько записей, поэтому я пытался найти способ, чтобы она возвращала полную минимальную дату / время из таблицы.
Результаты, которые я вижу для min (), просто показываютдата:
000000000172682 2019-01-29 NULL
Это верно для даты, однако в таблице для этого заказа на одну и ту же дату есть две записи:
Образец таблицы:
SalesOrder OldShipDate NewShipDate LastOperator ChangeDate
000000000172682 NULL 2019-01-29 RJB 2019-01-29 09:41:13.150
000000000172682 NULL 2019-01-29 RJB 2019-01-29 09:41:40.097
В идеалеЯ бы увидел полное время:
000000000172682 2019-01-29 09:41:13.150 NULL