У меня есть запрос, который работает в основном с полнотекстовым индексированным полем.
Запрос выглядит следующим образом:
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 вернет все результаты, наиболее близкие к поискустрока «quake 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
Как я могу получить желаемые результаты обеих записей "Quake II", чтобы появиться в верхней частирезультаты ??