在 mysql 中创建存储过程 计算产品利润 table

creating stored procedure in mysql calculate profit from product table

我的以下代码显示了一些错误:

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BEGIN SET @v1:= (select sum( cost_price * current_stock) from product)' at line 2

CREATE PROCEDURE sp_profit
BEGIN
SET @v1:= (select sum( cost_price * current_stock) from product);
SET @v2:= (select sum( selling_price * current_stock) from product);
SELECT (@v2 - @v1);
END

您忘记了程序名称后面的 ()。另外,你应该设置一个分隔符:

DELIMITER //
CREATE PROCEDURE sp_profit()
BEGIN
SET @v1:= (select sum( cost_price * current_stock) from product);
SET @v2:= (select sum( selling_price * current_stock) from product);
SELECT (@v2 - @v1);
END;
//

试一试-

DELIMITER $$
CREATE PROCEDURE sp_profit()
BEGIN
SET @v1= (select sum( cost_price * current_stock) from product);
SET @v2= (select sum( selling_price * current_stock) from product);
SELECT (@v2 - @v1);
END
DELIMITER ;