mysql在左侧联接表上匹配全文搜索的不同结果

mysql在左侧联接表上匹配全文搜索的不同结果,mysql,search,match,left-join,Mysql,Search,Match,Left Join,我有一个sql查询: SELECT `users`.*, `tags`.`usersID`, (MATCH (`users`.`role`,`users`.`skill`,`users`.`notes`) AGAINST ('value' IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION) + MATCH (`tags`.`tag`) AGAINST ('value' IN NATURAL LANGUAGE MODE WITH QUERY EXPANS

我有一个sql查询:

SELECT `users`.*, `tags`.`usersID`,
(MATCH (`users`.`role`,`users`.`skill`,`users`.`notes`) 
AGAINST ('value' IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION) +
MATCH (`tags`.`tag`)
AGAINST ('value' IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION))
AS score
FROM `users`
LEFT JOIN `tags` on `users`.`id` = `tags`.`usersID` 
WHERE
MATCH (`users`.`role`,`users`.`skill`,`users`.`notes`)
AGAINST ('value' IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION)
OR MATCH (`tags`.`tag`)
AGAINST ('value' IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION)
ORDER BY score DESC
查询运行得非常好,但是我需要选择唯一的行,没有重复的行。 我目前正在解决过滤后端阵列的问题,但我想知道是否有办法直接从数据库获取阵列

USERS EXAMPLE

Id: 1
Name: John
Surname: Smith
Role: player
Skill: tester
Notes: can be a writer sometimes

Id: 2
Name: Rudy
Surname: Burr
Role: alchemist
Skill: dj
Notes: he's into skateboarding

...

因此,如果我查找
juice
我只想得到John一次,而不是两次。

您可以简单地在ORDEY BY clauseI之前添加GROUP BY usersID,但它不起作用,它似乎在表中具有无法分组的tag.tag字段
TAGS EXAMPLE

Id: 1
usersID: 1
tag: potato juice


Id: 2
usersID: 1
tag: tomato juice


Id: 3
usersID: 1
tag: pepper

Id: 4
usersID: 2
tag: gas

...