【问题标题】:mysql query for retrieving multiple values as array用于检索多个值作为数组的mysql查询
【发布时间】:2021-03-25 17:01:55
【问题描述】:

我有两个表用户和任务如下:

用户:

任务:

我需要查询以获取用户为 2 的任务 ID 的所有用户 ID,输出表应为:

有人可以帮我查询吗?提前致谢。

【问题讨论】:

    标签: mysql sql database select group-by


    【解决方案1】:

    使用GROUP_CONCAT函数:

    SELECT 
        t.task_id AS task_id,
        GROUP_CONCAT(t.user_id) AS user_id,
        GROUP_CONCAT(u.username) AS user
    FROM task t
    JOIN user u ON t.user_id = u.id
    WHERE EXISTS (
       SELECT 1 FROM task
       WHERE task.task_id = t.task_id AND task.user_id = 2
    )
    GROUP BY t.task_id
    

    【讨论】:

    • 非常感谢。它按预期工作。
    猜你喜欢
    • 2017-07-14
    • 2017-06-05
    • 2016-11-29
    • 2014-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-27
    • 1970-01-01
    相关资源
    最近更新 更多