我正在尝试使用MySQL CASE语句从产品表中选择产品。如何让MySQL case语句在存储过程中工作?
我有这样的:
SELECT art.a,art.b,art.c
FROM products AS art
WHERE art.inventory != "0"
# filter by param_reference_iln (seller ID = vARCHAR(13))
CASE
WHEN param_reference_iln = '3333333333333' THEN AND art.iln = '1111111111111' OR art.iln = '2222222222222'
WHEN param_reference_iln = '8888888888888' THEN AND art.iln = '7777777777777'
ELSE AND art.iln NOT IN ('1111111111111','2222222222222','7777777777777')
END CASE;
我曾经尝试都CASE variants,但我不能让任何工作。
问题:
我在做什么错?
修复您的查询,几个语法错误。在'CASE'前面缺少'AND','THEN AND'也是不可能的,也许更多... – fancyPants
如果param_reference_iln的值是3333333333333或8888888888888,你想要做什么?你想从你的查询返回什么? – neeraj
*无法上手*不是有效的MySQL错误消息。 –