我需要查找当前的商品价格和上次历史价格,但我不知道如何创建查询,因为我不知道LogInstanc的用途是什么?因为我想在表aitm,itm1,ait1中使用它进行比较。然后使用sql server management 2014。
答案 0 :(得分:0)
LogInstanc是一个递增数字,表示行的版本号。它从1开始,并为写入表的每个记录版本递增。有一个最大历史记录设置(在公司设置中),一旦达到此数字,将删除最旧的行。
对于AITM表,LogInstanc和ItemCode都定义了主键。
对于AITM中的每一行,您可以在AIT1中拥有零个或多个匹配的行。对于此表,LogInstanc,ItemCode和PriceList是主键。
以下是一个示例,显示所有商品的当前和最后价格,价目表1:
SELECT itemcode
,(
SELECT TOP 1 price
FROM itm1
WHERE itm1.itemcode = oitm.itemcode
AND pricelist = 1
) AS currentprice
,(
SELECT TOP 1 price
FROM ait1
WHERE ait1.itemcode = oitm.itemcode
AND pricelist = 1
ORDER BY LogInstanc DESC
) AS lastprice
FROM oitm