Mysql #1241-在全文搜索中,操作数应包含1列
所以子查询给我两列(ID和分数)是什么导致了这个问题。Mysql #1241-在全文搜索中,操作数应包含1列,mysql,database,Mysql,Database,所以子查询给我两列(ID和分数)是什么导致了这个问题。 我不知道如何在不删除显示记录顺序的情况下删除score的列。我想您需要根据post\u shadow表的分数来显示post,该表的id列与post id关联。您可以使用join重写查询,如下所示 SELECT * FROM POST WHERE ID IN (SELECT ID, MATCH(TITLE, CONTENT) AGAINST ('something lalala') AS score FROM POST_S
我不知道如何在不删除显示记录顺序的情况下删除score的列。我想您需要根据post\u shadow表的分数来显示post,该表的id列与post id关联。您可以使用join重写查询,如下所示
SELECT * FROM POST WHERE ID IN
(SELECT ID, MATCH(TITLE, CONTENT) AGAINST ('something lalala') AS score
FROM POST_SHADOW WHERE MATCH(TITLE, CONTENT) AGAINST ('something lalala')
ORDER BY score DESC)
如果存在一对多关系b/w post和post\u shadow,则可以使用整个表达式in order by子句对结果进行相应排序,然后将选择部分更改为
select DISTINCT p.*。
否。。。它不是复制品
SELECT
p.*
FROM
POST
JOIN POST_SHADOW ps
ON (p.ID = ps.ID)
WHERE MATCH(ps.TITLE, ps.CONTENT) AGAINST ('something lalala')
ORDER BY MATCH(ps.TITLE, ps.CONTENT) AGAINST ('something lalala') DESC