У меня проблемы с получением строк по максимальной дате с количеством продукта
Вот таблица продуктов
SupplierCode Reference Qty
1000 M131200 500
1111 M131200 1
1000 M131300 200
1111 M131300 500
и вот таблица заказов
SupplierCode Reference OrderDate
1000 M131200 2019-01-09 00:00:00.000
1111 M131200 2018-07-25 00:00:00.000
1000 M131200 2019-01-15 00:00:00.000
1000 M131200 2019-01-21 00:00:00.000
1111 M131200 2019-01-02 00:00:00.000
1111 M131300 2019-02-05 00:00:00.000
1000 M131300 2019-03-05 00:00:00.000
1000 M131300 2019-04-07 00:00:00.000
1111 M131300 2019-02-04 00:00:00.000
Все, что мне нужно, это вернуть количество продукта на одну ссылку, чтобы я мог присоединиться к другой таблице. Проблема в том, что существует более одного поставщика, поэтому ссылки на мой окончательный запрос приведут к дублированию результатов, поскольку одна ссылка может иметь более одного поставщика.
Мне удалось получить самую последнюю дату для каждого поставщика
SELECT
O.SupplierCode,
O.Reference,
MAX(OrderDate) AS Date
FROM
Orders O
GROUP BY
O.SupplierCode,
O.Reference
, который возвращает это
SupplierCode Reference Date
1000 M131200 2019-01-21 00:00:00.000
1111 M131200 2019-01-02 00:00:00.000
1000 M131300 2019-04-07 00:00:00.000
1111 M131300 2019-02-05 00:00:00.000
Так что теперь мне нужно выбрать поставщика с самой последней датой для каждой ссылки
Например, конечный результат, который я ищу, это, конечно, быстрее, если объединить обе таблицы:
SupplierCode Reference Qty Date
1000 M131200 500 2019-01-21 00:00:00.000
1000 M131300 200 2019-04-07 00:00:00.000
Но я не уверен, как мне следует проверить дату на where
пункте