我的以下代码显示了一些错误:
1064 - 您的SQL语法出错;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 靠近' BEGIN SET @ v1:=(从中选择总和(cost_price * current_stock) 产品)'在第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
答案 0 :(得分:2)
您忘记了程序名称后面的()。此外,您应该设置分隔符:
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;
//
答案 1 :(得分:0)
试一试 -
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 ;