gpt4 book ai didi

mysql - SQL - 试图判断查询的哪一部分与 'OR' 语句匹配

转载 作者:行者123 更新时间:2023-11-29 10:04:33 27 4
gpt4 key购买 nike

我有一个查询,我想检查多个列是否与我要查找的内容匹配,如下所示:

$params = [$param1,$param2];
$sql = "SELECT * FROM table WHERE column1 LIKE ? OR column2 LIKE ?";
$stmt = DB::run($sql,$params);

在本例中,我通常使用两列,但在我的网站上,我有 8 列,并且可能会增加。

但我想回显匹配列中的数据,而不是其他列中的数据。

所以从逻辑上讲,我想要这样的东西:如果column1匹配我的参数回显column1,否则如果column2匹配我的参数echocolumn2。

我是否需要单独对每个查询进行查询,或者是否有办法告诉您何时有“OR”语句(如上面的查询中所示),查询的哪一部分正在匹配。

最佳答案

使用union,根据您的需求,您的查询应如下所示

   SELECT column1 FROM table WHERE column1 LIKE ?
union
SELECT column2 FROM table WHERE column2 LIKE ?

关于mysql - SQL - 试图判断查询的哪一部分与 'OR' 语句匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52167413/

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