我有2个表,几乎相同的属性。让我们在表1中说我有这些属性。
Item Quantity Unit Net Price Total Net Price
asd 2 22 44
而且,在表2中:
Item Quantity Unit Gross Price
asd 1 20
您可以看到每张桌子的不同。
Unit Net Price
= Unit Gross Price
* 1.10
Total Net Price
= Unit Net Price
* Quantity
我需要将table2插入table1,同时Unit Net Price
和
将计算Total Net Price
。我无法为此创建正确的查询语句。到目前为止,我正在处理这个声明。
"INSERT INTO [table1] ([Item], [Quantity], [Unit Net Price], [Total Net Price]) SELECT * FROM [table2] WHERE [Unit Net Price] = [Unit Gross Price] * 1.10 AND [Total Net Price] = [Quantity] * [Total Net Price]"
我正在使用OleDBCommand
进行此查询。任何人都可以给我正确的查询声明或适当的解决方案吗?
答案 0 :(得分:1)
对于SQL解决方案,请使用此方法 计算进入SELECT子句,而不是WHERE子句。
另请注意,您不能使用刚刚计算的字段([单位净价])来计算另一个字段([总净价]),所有计算必须基于表2中的字段。
INSERT INTO [table1] ([Item], [Quantity], [Unit Net Price], [Total Net Price])
SELECT
[Item],
[Quantity],
[Unit Gross Price] * 1.10 AS [Unit Net Price],
[Quantity] * [Unit Gross Price] * 1.10 AS [Total Net Price]
FROM [table2]