我正在撰写一份报告,以确定历史上这些商品的平均售价与这些商品的标价相比。
我可以从值输入表中获得所有实际的销售价格。
“定价”系统位于“销售价格”表中。
棘手的部分是价格变化,因此给定项目的标价会根据项目的销售日期而有所不同。因此,要准确地报告这种情况,我需要确定销售当天的标价。
幸运的是,“销售价格”表具有价格的开始日期和结束日期。
因此,我试图确定如何将销售价格表加入到值输入表中,在该表中,商品的销售日期介于销售价格表中某行的开始日期和结束日期之间
EX
Item No List Price Start Date End Date
1001 $1.00 01-01-18 02-28-18
1001 $1.25 03-01-18 05-31-18
1001 $1.50 06-01-18 08-31-18
商品1001于01-21-18出售如何获得1.00美元的价格才能正确加入?
答案 0 :(得分:0)
您可以使用以下查询:
select * from table t where '01-21-18' >= t.startdate and '01-21-18' <= t.enddate and t.item_no = 1001
答案 1 :(得分:0)
外部联接应该这样做:
select
o.*,
p.list_price
from orders o
left join sales_price p on p.item_no = o.item_no
and o.sales_date between p.start_date and p.end_date