我使用此查询
SELECT keyword
FROM files
UNION SELECT keyword
FROM search
WHERE keyword
REGEXP "/(honda)|(jazz)|(manual)/"
AND keyword != "honda jazz manual"
ORDER BY keyword ASC
LIMIT 0 , 10
但我得到了这个结果
大爆炸理论参考
我想问你们,如何使用regexp搜索关键字。
答案 0 :(得分:0)
请尝试以下方法:
SELECT keyword
FROM
(SELECT keyword
FROM files
UNION SELECT keyword
FROM search) allkeywords
WHERE keyword REGEXP '(honda|jazz|manual)'
AND keyword != 'honda jazz manual'
ORDER BY keyword ASC
LIMIT 0 , 10
请参阅http://sqlfiddle.com/#!2/9341ff/5
说明:
(1)联合查询需要进入子查询以允许WHERE子句影响所有子查询。
(2)REGEXP语法略有错误 - 括号围绕整个OR表达式,而不是单个项目。