Mysql'匹配'有多个标准

时间:2014-07-21 11:51:50

标签: mysql sql string-matching

如何将一列中的记录与'匹配'进行比较?该代码无法正常运行:

$sql = 'SELECT * FROM `database` WHERE MATCH (`content` WHERE `id` != \'\')AGAINST (`content` WHERE `id` = \'\' IN BOOLEAN MODE)'; 
$p = $db->query($sql);

2 个答案:

答案 0 :(得分:0)

我不确定你要求的是什么。其他人对以下链接中发布的类似问题提供了非常好的回复:

Mysql search for string and number using MATCH() AGAINST()

在我看来,如果我已正确理解你的例子,你试图匹配来自2个不同表格的2列之间的模式/表达式。如果是这样,那么链接中提供的解决方案可能不是“走的路”。这取决于你,希望它有所帮助..

答案 1 :(得分:0)

作为documentedMATCH()语法如下:

MATCH (col1,col2,...) AGAINST (expr [search_modifier])

被描述为:

  

MATCH()采用逗号分隔的列表来命名要搜索的列。 AGAINST需要一个字符串来搜索,一个可选的修饰符指示要执行的搜索类型。搜索字符串必须是在查询评估期间保持不变的字符串值。例如,这排除了表列,因为每行可能不同。

因此,您使用的语法完全无效。