繁体   English   中英

如何将结果插入所需的行? SQL服务器

[英]How to insert the result in the desired row? SQL Server

我需要将结果插入正确的行。

DECLARE @DiscPrice float;
SET @DiscPrice = (SELECT Prod.priceProd - Prod.priceProd / 100 * Prod.disc 
                  FROM Prod 
                  WHERE id_prod = 1);

UPDATE Prod 
SET priceDisc = @DiscPrice 
WHERE id_prod = 1;

SELECT * FROM Prod;

也就是说,不是WHERE id_prod = 1 ,而是在所有行中插入了所需的结果。

我不确定我是否说清楚了,但我希望你能理解。

我想你想要

UPDATE Prod 
SET priceDisc = ((priceProd - priceProd) / 100) * disc
WHERE id_prod = 1;

无需使用变量或查询来为其分配值。

您可以直接更新查询如下

UPDATE Prod SET priceDisc =((priceProd - priceProd) / 100 * disc)

这将更新所有行中的数据

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM