gpt4 book ai didi

php - find_in_set() 没有找到所有值

转载 作者:行者123 更新时间:2023-11-29 00:33:08 26 4
gpt4 key购买 nike

我的数据库中有以下记录:

hashtag -   description -   tags -  location -  time -  day

#social - description - social media, facebook, social networking sites, social media, smartphone - usa - Tuesday

#php - description - programming language, coding, open source - usa - Tuesday

#iphone - description - smartphone, apple, iphone apps, costly phone, touch screen - usa - Tuesday

这里的标签是逗号分隔值。

现在,如果用户搜索programming - 结果将是第二行

"coding"  - 2nd row
"smartphone" - 3rd & 1st row.
"iphone" - 3rd row

所以,这就像搜索标签或直接搜索哈希关键字。第一列是 hashkeyword。标签以逗号分隔存储在数据库中。

我为此使用了 find_in_set(),但它似乎无法正常工作。

SELECT * FROM `hash`WHERE `hashtag` LIKE 'smartphone' OR find_in_set('smartphone', tags)

它只返回第一行即

iphone -    iphone description - smartphone, apple, apps, touchscreen - India   - tuesday

但是“智能手机”值也在第 3 行,因此它应该返回第 1 行和第 3 行。

我哪里错了?或者是否有任何不同的搜索方法来代替 find_in_set()

最佳答案

如果逗号后有空格,则 FIND_IN_SET 将无法正常工作。

它将在 smartphone, apple, apps, touchscreen 中找到,但在 apple, smartphone, apps, touchscreen 中找不到。

对于替代解决方案,请尝试 mysql full text search .

关于php - find_in_set() 没有找到所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15610394/

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