gpt4 book ai didi

mysql - 需要一种方法使 MySQL 查询根据指定或未指定的条件在Where子句中考虑或排除条件

转载 作者:行者123 更新时间:2023-11-29 10:56:45 26 4
gpt4 key购买 nike

我使用 Chartio 创建仪表板。我可以在 Chartio 中使用变量来填充 MySQL 查询的各个部分,然后生成一个很酷的图表。我遇到的情况是,我需要一个可以包含 3 个变量 X、Y、Z 的任意组合的查询,如下所示。

SELECT orderid
FROM orders
WHERE productcode IN (X) AND
status IN (Y) AND
date IN (Z);

例如,我需要让查询能够“确定”如果我只给它 X,则忽略 Y 和 Z 作为条件。或者,如果我给它 X 和 Y,忽略 Z。我可以给它这三个的任意组合。我所说的“忽略”是指不将其用作 WHERE 子句中的条件。

使用 OR 可以实现这一点吗?正则表达式?通配符? ...?我不太熟悉 MySQL。提前致谢

最佳答案

如果当用户离开该字段时将变量设置为空字符串,您可以编写:

SELECT orderid
FROM orders
WHERE (X = '' OR productcode = X) AND
(Y = '' OR status = Y) AND
(Z = '' OR date = Z);

关于mysql - 需要一种方法使 MySQL 查询根据指定或未指定的条件在Where子句中考虑或排除条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42916268/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com