如何使用MySQL搜索多工作标签

时间:2016-04-24 17:43:56

标签: php mysql search tags

我有三张桌子

Tags    | tag_id,tag_name
Tag_link| tag_id,item_id
Item    | item_id

一个Item可以有多个标签,这些标签可以是多个单词

我尝试将输入分成不同的单词

SELECT * FROM Item i
join Tag_link l on l.item_id=l.item_id
join Tags     t on t.tag_id =l.tag_id
WHERE REGEXP 'test|query|yay'

但我希望在此搜索中,标记为test query yay的项目的排名高于testquery,但我还需要test queryquery yay也需要搜索。

我是否只需要在我的PHP中执行此操作并将其拆分为所有不同的组合以及要查找的内容,为每个查询分配一个数字然后对其进行排序?

0 个答案:

没有答案