首页 > 解决方案 > 选择具有多个类别的用户

问题描述

现在我有这些表格,用户可以拥有多个类别,我想像这样显示表格

我已经写了这个声明,但是它在每个类别中都重复了用户名

SELECT 
  c.name
FROM 
  permission p
  JOIN users u 
    ON u.id = p.user_id
  JOIN category c
    ON c.id = p.category_id

USER DATA TABLE // 这个表是我想要得到的,因为每个用户都有不止一个类别

用户名 电子邮件 类别
数学、科学
行,行,行

//这些表是我在数据库中的

用户表

用户身份 用户名 电子邮件
5
6

类别表

身份证 名称
8 数学
9 科学

许可表

ID 用户身份 身份证
1 5 8
2 6 9

标签: mysqlsql

解决方案


如果您只有用户名,请使用 DISTINCT

SELECT DISTINCT
    c.name
FROM
    permission p
        JOIN
    users u ON u.id = p.user_id
        JOIN
    category c ON c.id = p.category_id

使用更多列,您应该寻找GROUP BY c.name


推荐阅读