【发布时间】:2014-11-26 08:53:28
【问题描述】:
UPDATE dbo.INVOICELINES
SET dbo.INVOICELINES.NetPrice = ITEM.Price
FROM dbo.INVOICELINES LNS
INNER JOIN dbo.Storage ITEM ON LNS.Product = ITEM.Product
UPDATE dbo.INVOICELINES
SET dbo.INVOICELINES.GrossPrice = dbo.INVOICELINES.NetPrice/100*(100+(select TaxRate from dbo.INVOICELINES LNS,dbo.TaxRates txr where LNS.TAX=txr.code))
在此查询中,我更新了发票中的价格,并从存储中获取了新价格。
问题出现在最后一次 UPDATE 和 SET 中,我想使用发票行中的税码更新总价,参考税码表。
问题出现在有多个发票的地方。我的数据库是意大利语(它)
这是一个例子:
发票行
LINE INVOI ARTICLE QTT NET GROSS TAX
1 1000 ARTICLE1 11,00 30,00 36,60 022
2 1000 ARTICLE2 1,00 0,00 794,22 022
2 2000 ARTICLE1 1,00 30,00 110,00 010
3 1000 ARTICLE2 1,00 0,00 55,00 010
税码
CODE DESCRIPT PERCENTAGE
004 IVA 4% 4
007 ESCL. ART.7 0
010 IVA 10% 10
017 NS ART 17 EDIL. 0
020 IVA 20% 20
021 IVA 21% 21
022 IVA 22% 22
026 ESCL. ART.26 0
041 NI ART.41 INTRA 0
问题出在这里:
(742 行受影响)消息 512,级别 16,状态 1,第 14 行子查询 返回超过 1 个值。子查询时不允许这样做 遵循 =、!=、、>= 或当子查询用作 表达
【问题讨论】:
标签: sql sql-server multiple-value