gpt4 book ai didi

php - 如何获取最符合用户搜索条件的记录?

转载 作者:太空宇宙 更新时间:2023-11-03 12:15:14 25 4
gpt4 key购买 nike

我知道标题不明确,但我想要的是搜索与用户搜索的确切条件匹配的产品,如果该搜索中没有太多记录,所以我想显示其他结果以及用户搜索结果。

例子:假设我有字段

产品名称 价格 类别 子类别 开始日期 结束日期 名称 城市 州 国家/地区

用户可以从以上所有字段进行搜索,但我希望用户搜索应该始终看到至少 12 个结果,无论其他结果是否符合所有条件,这意味着搜索应该从完全匹配搜索扩展到小失败者(或者可能否)匹配标准。

我知道我可以通过多个查询轻松实现这一目标,但重点是我想通过一个或更少的查询实现这一目标。

在这方面的任何帮助将不胜感激。

最佳答案

如果表扫描就可以得到结果,最简单的方法很可能只是按命中数对行进行排名,并显示排名最好的 12 个;

SELECT 
*,
CASE WHEN productname='prod#1' THEN 1 ELSE 0 END +
...
CASE WHEN city='city#1' THEN 1 ELSE 0 END +
...
CASE WHEN country='country' THEN 1 ELSE 0 END rank
FROM search
ORDER BY rank DESC
LIMIT 12

An SQLfiddle example with just 3 columns implemented .

关于php - 如何获取最符合用户搜索条件的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22524273/

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