SET @input1=123;
SET @input2='foobar';
IF @inout1>0 THEN
SELECT
@result := col12
FROM
table1
WHERE
col11=@input1;
ELSE IF @input2 != ''
SELECT
@result := col21
FROM
table2
WHERE
col22=@input2;
END
基本上取决于是否设置@input1
或@input2
设置,如果设置值满足特定条件,则应运行两个 SELECT 语句之一。但我无法让它与 MySQL 中的 IF THEN ELSE 语句一起使用。正确的语法应该是什么?
两个条件都不能在 NOT 中给出 NULL(由于字段/变量值中的 NULL)。
如果单独的查询不复杂,则 UNION 中每个单独子查询的外部 SELECT 可能会过多。
对于问题中显示的代码,它将是