use*_*310 1 mysql join against match
是否可以使用连接对具有两个表的查询进行匹配?棘手的部分可能是表上的索引,但也许有办法.. sql 不是我的强项。非常感谢。我想它可能是这样的:
SELECT * FROM 'pages' p
LEFT JOIN `tags` t
ON p.id = u.pageid
WHERE MATCH(p.shdescript,t.tag) AGAINST ('romance, relationship')
Run Code Online (Sandbox Code Playgroud)
非常感谢
这是可能的,但您需要有文本索引。
mysql> alter table pages add fulltext index_text(shdescript);
mysql> alter table tags add fulltext index_text(tag);
SELECT * FROM 'pages' p
LEFT JOIN `tags` t
ON p.id = u.pageid
WHERE MATCH(p.shdescript,t.tag) AGAINST ('romance relationship')
Run Code Online (Sandbox Code Playgroud)
我想这足以工作。
编辑:
从 MySQL 5.6 开始,可以在 MyISAM 和 InnoDB 存储引擎上完成上述全文搜索。在早期的 MySQL 版本上,只有 MyISAM 表支持全文索引。
http://dev.mysql.com/doc/refman/5.6/en/fulltext-search.html