我有一个查询主要在全文索引字段上运行。进一步改进MySql查询结果订购
查询如下:
SELECT
MATCH (g.GameTitle) AGAINST ('quake ii') as Score,
g.*, p.id AS platformid,
p.alias AS PlatformAlias,
p. name,
p.icon
FROM
games as g,
platforms as p
WHERE
MATCH (g.GameTitle) AGAINST ('quake ii')
AND g.Platform = p.id;
我希望MySQL的返回最接近搜索字符串“雷神之锤II”的所有结果偏向上方,然而,这是不是这样......其实,数据库中有两个条目的游戏标题为“quake ii”,并且这些条目在分数排序的任何一端都分开,即使它们具有相同的分数。
这可以在这里的结果可以看出:
Score id GameTitle
----- -- ---------
5.883631706237793 393 Quake II
5.883631706237793 777 Quake
5.883631706237793 778 Quake 4
5.883631706237793 2922 Quake
5.883631706237793 2924 Quake II
5.817491054534912 427 Quake III Arena
5.817491054534912 2925 Quake III Arena
5.689572811126709 85 Enemy Territory: Quake Wars
我怎么能同时获得“雷神之锤II”项目的预期效果出现在结果的顶部?
可能重复[更好的MySQL/php搜索结果排序](https://stackoverflow.com/questions/9593293/better-ordering-of-mysql-php-search-results ) – user4157124 2017-10-31 15:38:57