如何在JOIN的ON语句中使用MATCH?

时间:2012-07-30 22:57:49

标签: mysql join left-join match

我正在尝试在LEFT JOIN上使用MATCH语句,但我一直在:

 Incorrect arguments to AGAINST

这就是我的尝试:

SELECT *
FROM Posts
LEFT JOIN `Follow_Searches` 
ON MATCH(`Posts`.`B`) AGAINST (`Follow_Searches`.`B`)

如何做到这一点?

2 个答案:

答案 0 :(得分:0)

无法做到。来自manual

  

使用MATCH()... AGAINST语法执行全文搜索。 MATCH()采用逗号分隔的列表来命名要搜索的列。 AGAINST需要一个字符串来搜索,一个可选的修饰符指示要执行的搜索类型。 搜索字符串必须是文字字符串,而不是变量或列名。

强调我的。

答案 1 :(得分:0)

加入数据时,必须在关键字ON后指定数据将加入的字段(例如,ON table1.id = table2.id)。

也许在你的情况下你应该做一个笛卡尔乘法并在WHERE中使用MATCH-AGAINST或其他比较函数。

相关问题