我有这个字符串“我需要红色廉价车”。
我有一个表,其中列关键字中有逗号分隔的单词。我知道我可以使用
find_in_set
来搜索该列中是否存在特定单词(例如预算或汽车),例如:
select * from products where find_in_set('budget',keywords) <> 0
但是,如果关键字列,我找不到方法来检查字符串中是否存在任何单词。
当然,我可以按单词分隔字符串并为每个单词运行上述查询,但这会增加执行时间,因此我正在寻找某种方法在一个查询中完成此操作。
在 MySQL 中使用 FIND_IN_SET() 之前,您需要了解以下内容
从产品中选择 * WHERE FIND_IN_SET('car', REPLACE(keywords, ' ', ',')) > 0;
在使用 find_in_Set 之前,需要用逗号分隔符替换值之间的空格,效果很好。