gpt4 book ai didi

MySQL查询多个表是从表多个项目?

转载 作者:行者123 更新时间:2023-11-29 02:35:08 24 4
gpt4 key购买 nike

我有一个查询,我目前从 2 个表中获取信息,如下所示:

SELECT g.name 
FROM site_access b
JOIN groups g
ON b.group_id = g.id
WHERE b.site_id = 1
ORDER BY g.status ASC

现在我想用这个查询有另一个表,但是这个表会返回超过 1 行,这可能吗?

我所能做的就是从该表中拉出 1 行,我想要的字段是一个字符串字段,也可以用分隔符连接结果,只要所有匹配项都可以在此查询中拉到一起。

如果您需要有关表的更多信息或任何内容,请尽管说我认为不需要,因为这主要是一个如何从连接/选择查询中提取多行的示例。

更新上述查询的结果:

Admin
Member
Banned

现在在我的第三张表中,每个访问权限都有他们可以使用的命令,因此第三张表将列出每个访问权限的命令,例如:

Admin - add, del, announce
Member - find
Banned - none

更新 2:

  • 网站访问

    site_id
    group_id
  • 团体

    id
    name
    status
  • groups_commands

    group_id
    command_id
  • 命令

    id
    name

最佳答案

SELECT g.name, GROUP_CONCAT(c.command) AS commands
FROM site_access b
JOIN groups g
ON b.group_id = g.id
JOIN groups_commands gc
ON g.id = gc.group_id
JOIN commands c
ON gc.command_id = c.id
WHERE b.site_id = 1
GROUP BY g.name
ORDER BY g.status ASC

关于MySQL查询多个表是从表多个项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6472970/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com