我尝试了以下检查SQL多个条件的脚本。
BEGIN
IF @total == 7 THEN
UPDATE some_table SET time = '09:55' where warehouse_id=@code;
UPDATE some_table SET enable = 0 where warehouse_id=@code;
SELECT * FROM some_table WHERE warehouse_id= @code;
END IF
END
@total的值是7,但是脚本无法执行并显示
[42000] [1064]您的SQL语法有错误;查看手册 对应于您的MySQL服务器版本的正确语法, 在第2行的'IF @total == 7 THEN'附近使用
答案 0 :(得分:3)
Mysql IF ... ELSE
仅支持stored procedure
或trigger
您可以尝试将逻辑@total = 7
移至where
的位置。
UPDATE some_table SET time = '09:55' where warehouse_id=@code and @total = 7;
UPDATE some_table SET enable = 0 where warehouse_id=@code and @total = 7;
SELECT * FROM some_table WHERE warehouse_id= @code and @total = 7;
答案 1 :(得分:0)
尝试
IF @total = 7 THEN
只需更改单个'='
答案 2 :(得分:0)
您应该将equal运算符更改为=,就像这样:
如果@total = 7,那么..