Самая последняя цена за товар - PullRequest
1 голос
/ 25 октября 2019

У меня есть проблема, из-за которой я не могу узнать, как получить самую последнюю цену за элемент.

Моя таблица состоит из множества полей, но мне действительно нужны только три

ПУНКТ UNITPRICE AUDTDATE

То, что я хочу увидеть, это

| ITEMNO | QTYONHAND |
|--------|-----------|
|      1 |         12|
|      2 |         13|
|      3 |          4|

С течением времени, так как я уверен, что evberyone знает, по какой цене вы выставляете счет, так что то, что я хочу увидеть, является только самым последнимцена счета-фактуры за каждый элемент.

Я устал

SELECT ITEM,UNITPRICE,max(AUDTDATE) from OEINVD
WHERE ITEM is NOT NULL
GROUP BY ITEM,UNITPRICE
ORDER BY ITEM

Но он дает несколько для каждого sku: (

В идеале я хочу увидеть один sku и одну цену (последняя цена, по которой мы выставили счет)

Пожалуйста, дайте мне знать, если вы можете помочь :)

1 Ответ

1 голос
/ 25 октября 2019

Попробуйте использовать TIES вместе с ROW_NUMBER:

SELECT TOP 1 WITH TIES ITEM, UNITPRICE, AUDTDATE
FROM OEI
ORDER BY ROW_NUMBER() OVER (PARTITION BY ITEM ORDER BY AUDITDATE DESC);
...