我有一个表,其中包含PRICE int值,QUANTITE int值,TOTAL int值 我想插入PRICE和QUANTITE并让SQL查询为我计算总数她的查询结果如何
INSERT INTO table_name (PRICE,QUANTITE,TOTAL)
VALUES ('4800','3',PRICE * QUANTITE);
它没有用,所以我尝试了另一个查询
INSERT INTO table_name (PRICE,QUANTITE,TOTAL)
VALUES('4800','3',SELECT (QUANTITE * PRICE) as TOTAL from table_name);
这也没有任何建议吗?
答案 0 :(得分:3)
您可以使用insert . . . select
:
INSERT INTO table_name(PRICE, QUANTITE, TOTAL)
SELECT price, quantite, price * quantite
FROM (SELECT 4800 as Price, 3 as Quantite) t;
注意:不应对数字常量使用单引号。仅对字符串和日期常量使用单引号。
答案 1 :(得分:1)
用变量
做DECLARE @I INT
INSERT INTO table_name
SELECT PRICE,QUANTITE,@i=(QUANTITE * PRICE)
from table_name
WHERE PRICE=4800 AND QUANTITE=3