mysql - 组连接查询mysql

标签 mysql sql

查询成功后得到结果

表用户:

enter image description here

并有结果。我想加入表主题并通过 id 获取主题名称。

表格主题:

enter image description here

与表主题相关的表用户 ID

我想要的输出:

enter image description here

您可以向我询问吗?谢谢大家!

最佳答案

您将 CSV 数据存储在 MySQL 表中,这是不可取的。但您可以使用它的一种方法是使用 FIND_IN_SETSubjects 表连接到 user 表,以处理后者中包含的 CSV 数据.

SELECT t2.defaultSubjectId,
       GROUP_CONCAT(t1.subject)
FROM Subjects t1
INNER JOIN user t2
    ON FIND_IN_SET(t1.subjectId, t2.defaultSubjectId) > 0
GROUP BY t2.defaultSubjectId

此处演示:

SQLFiddle

关于mysql - 组连接查询mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39465279/

相关文章:

php - 如何在 'php' 中自连接两个表后打印表中获得的值?

mysql - 在 WHERE 子句中使用 SELECT 结果作为列名

mysql - 理解下面的MySQL逻辑

php - 无法让 mySQL 将数字作为新列输入

sql - 从 Postgres 的外键约束中删除 `MATCH FULL` 的理想方法是什么?

php - 如何将一个 Doctrine 实体保存到两个数据库表中(MySQL 优化所需)

Mysql表合并为一张表

MySQL JOIN ON 与变量不匹配的两列之一

php - 在php中添加搜索过滤器

mysql - 选择相同条件存在 2 个不同值的 mysql 行