我手上有一个非常特殊的问题。我有一个项目,以前的数据库工程师没有考虑过数据库设计,现在我坚持使用它。我的问题很简单:
我有两个不同的选择查询,如果设置了一个字段,则应该执行其中一个,即
如果 field1 为 0 -> 执行查询 1 如果 field1 为 1 -> 执行查询 2
到目前为止我到了这里:
SELECT should_i_care
FROM
product_sample
WHERE
pid='XXX'
CASE should_i_care
WHEN '1' then call query2
WHEN '0' then call query1
但发现我无法声明我想要运行的查询。有什么建议吗?
最佳答案
应该是这样的脚本或者存储过程
DECLARE shouldICare INT;
SELECT @shouldICare := should_i_care
FROM
product_sample
WHERE
pid='XXX';
IF @shouldICare = 1 THEN
Call query2;
ELSE
Call query1;
END IF;
关于MySQL 控制流建议 (CASE/THEN),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12281916/