對於模糊的問題表示歉意,如果之前有人問過這個問題,我很難弄明白這個問題。限制加入的結果
我有三張表;地段和Salesorder,並OrderLot:
Lot SKU CreationDate
-------------------------
1000-a 1000 2017-04-12
1000-b 1000 2017-04-13
2000-a 2000 2017-04-12
2000-b 2000 2017-04-13
SalesorderID Revenue
-----------------------------
1 $500
2 $250
3 $125
OrderLotID SalesorderID Lot
------------------------------
1 1 1000-a
2 1 2000-a
3 2 1000-b
4 2 2000-b
5 3 1000-a
我想做一個加盟這使我給出的地段在SalesOrder的創建日期所產生的總收入。
例如,我想使用2017-04-12的創建日期並獲得625美元的結果(批量1000-a和2000-a是在此日期創建的,並且它們用於「填充」 SalesorderIDs 1和3)。但我目前使用的連接在Salesorder 1中返回兩行,在Salesorder 3中返回一行,結果爲$ 1125。
如何限制從OrderLot返回的行,以便只計算唯一的Salesorder收入?
感謝,
傑夫
編輯。當前的查詢是:
select sum(so.revenue)
from salesorder so
inner join orderlot ol on so.lot = ol.lot
inner join lot l on ol.lot = l.lot
where l.creationdate = '2017-04-12'
您嘗試的查詢將有助於瞭解需要更正的信息 – Degan
因此,銷售總額爲500 for salesOrderID1,您不知道按批次存在哪些收入? – xQbert
正確。實際問題是:給定生產日期的收入是多少。訂單被「填充」很多。所以我需要獲得在特定日期生產的所有訂單的收入。 – JeffO