标签: mysql
我的mysql查询是:
SET @PID = 0 SELECT * FROM ProductMaster WHERE CASE WHEN @PID = 0 THEN ID = ID ELSE ID = @PID END;
我甚至尝试过
SET @PID = 0 SELECT * FROM ProductMaster WHERE IF(@PID=0, ID=ID, ID=@PID);
生成相同的#1064 synatx错误
答案 0 :(得分:0)
你不能使用这样的CASE表达式,但你可以按如下方式改写你的逻辑:
CASE
SELECT * FROM ProductMaster WHERE @PID = 0 OR ID = @PID;