Mysql仅从n:n关系中检索特定值

Mysql仅从n:n关系中检索特定值,mysql,Mysql,假设我们有以下Mysql表: 用户: userID | user_name 分类: classificationID | classification_name | classification_ponder userId(PK) | classificationId(PK) 用户分类: classificationID | classification_name | classification_ponder userId(PK) | classificationId(PK) 这是用

假设我们有以下Mysql表:

用户:

userID | user_name
分类:

classificationID | classification_name | classification_ponder
userId(PK) | classificationId(PK)
用户分类:

classificationID | classification_name | classification_ponder
userId(PK) | classificationId(PK)
这是用户和classifiaction之间的n:n关系

我感兴趣的是如何查询每一个用户,在一列中包含最大思考的所有分类,用
分隔

例如,假设我们有ID=1的user1,并且有以下分类:

 classificationId | classification_name | classification_ponder
---------------------------------------------------------------
        1                 class1                     5 
        2                 class2                     5 
        3                 class3                     4
        4                 class4                     2
 userId | ClassificationId
---------------------------
    1            1
    1            2
    1            3
    1            4
用户\分类表为(用户拥有所有分类):

我想得到的是:

userId | user_name | class1, class2
因此,只有最重要的分类名称(在本例中为
class1
class2
)显示在一列中,以“,”分隔

我通过以下mysql查询成功获取了用户的所有分类:

select 
  user.user_name,
  GROUP_CONCAT(DISTINCT Classification.classification_name) as Classification 
from user 
left join user_classification 
  on (user_classification.userId=user.userID) 
left join Classification 
  on (Classification.classificationID=user_classification.classificationId) 
GROUP BY user.userID</b>
选择
user.user\u名称,
组(不同分类。分类名称)作为分类
来自用户
左连接用户分类
on(user\u classification.userId=user.userId)
左连接分类
on(Classification.classificationID=user\u Classification.classificationID)
按user.userID分组
我想做的是只显示最值得深思的分类

类似这样的东西应该可以做到(可能有一些语法错误)

类似这样的东西应该可以做到(可能有一些语法错误)