gpt4 book ai didi

php - 首先搜索第一个字段中的数据,如果没有则搜索下一个字段,如果没有则搜索第三个字段

转载 作者:行者123 更新时间:2023-11-29 23:31:33 25 4
gpt4 key购买 nike

我必须使用 mysql 查询从数据库中查找数据。

屏幕是:- 我必须根据状态搜索数据。在管理中,我为每条记录存储三个状态。因此,当用户搜索时,查询将在第一个字段中搜索。如果找不到数据,则查找第二个字段,如果找不到数据,则查找第三个字段。

是否可以在一个查询中完成此操作,以便我能够进行分页。

最佳答案

一种方法是您可以通过比较所有三列来编写查询,并根据匹配的列对结果集进行排序

select * ,
case
when col1 = 'some value' then 3
when col2 = 'some value' then 2
when col2 = 'some value' then 1
else 0 end as matching_criteria
from table
where col1 = 'some value'
or col2 ='some value'
or col3 ='some value'
having matching_criteria > 0
order by matching_criteria desc
limit 10

现在,如果 col1 匹配某个值,那么它将首先显示在结果集中,如果没有,那么它将显示在结果的末尾,对于其他列,其他方法是使用第一列进行查询,检查结果是否为空,然后转到第二列,依此类推

关于php - 首先搜索第一个字段中的数据,如果没有则搜索下一个字段,如果没有则搜索第三个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26543383/

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