我正在构建一个 Mysql 全文搜索,我有 4 个表要搜索。当我在搜索查询中仅使用单个表时它可以工作,但是当我在查询中使用多个表时它不起作用。我也不想在查询中使用 UNION ALL,因为我正在使用复选框选择选项在单个或多个表中执行搜索。
多个表上的 MySQL 查询不起作用。
$sqlquery = mysql_query("(SELECT * FROM table1, table2, table3, table4 WHERE MATCH (pflink, title) AGAINST ('%$keyword*%' IN BOOLEAN MODE) )ORDER by pflink desc, $orderby $sortby LIMIT $rowsperpage OFFSET $offset ")or die (mysql_error());
它给了我错误Column 'pflink' in where clause is ambiguous
使用单表查询有效。
$sqlquery = mysql_query("(SELECT * FROM table1 WHERE MATCH (pflink, title) AGAINST ('%$keyword*%' IN BOOLEAN MODE) )ORDER by pflink desc, $orderby $sortby LIMIT $rowsperpage OFFSET $offset ")or die (mysql_error());
Html 复选框代码
<input name="all-tables" type="checkbox" value="true" checked="checked" id="check-all" >
<input name="table1" type="checkbox" value="true" disabled="disabled" >
<input name="table2" type="checkbox" value="true" disabled="disabled" >
<input name="table3" type="checkbox" value="true" disabled="disabled" >
<input name="table4" type="checkbox" value="true" disabled="disabled" >
请提出任何可能的方法来修改此查询以使其适用于多个表。
谢谢。