0
我刚刚开始使用SQL,并且一直在使用MySQL。我试图编写一个存储过程,它将从我的产品表中的buyPrice列中获取每个值,并将每个值存储到一个变量。然后我希望它将这个变量乘以销售税,然后将每个结果放入我的空sales_tax列中。我想用每个项目的销售税填充整个列。当我执行这个方法时,我得到一些错误,说明productCode没有默认值。 写这个的正确方法是什么?我知道这不是执行此任务的最有效方式,只是尝试练习。在循环中使用MySQL查询结果
DELIMITER //
CREATE PROCEDURE nFirstProcedure()
BEGIN
DECLARE IdValue, counter, holdValue, result INT DEFAULT 0;
DECLARE holdName VARCHAR(30);
SET counter = 1;
WHILE counter < (SELECT COUNT(*) FROM products)
DO
SET holdValue = (SELECT buyPrice FROM products WHERE sales_tax = null);
SET result = (holdValue * 0.08);
INSERT INTO products (sales_tax) VALUES (result);
END WHILE;
END//
DELIMITER ;
这是确定性更有效的方法。我正在练习SQL,并试图使用变量和循环。我需要做些什么才能将buyPrice存储为变量,然后将变量乘以销售价格并将其放入sales_tax中?非常感谢你的帮助 –