gpt4 book ai didi

sql - 一张表两列MYSQL查询挑战

转载 作者:行者123 更新时间:2023-11-29 02:07:40 26 4
gpt4 key购买 nike

考虑一个名为“comments”的 MYSQL 表,其中包含 2 列“hostname”和“username”。

如何返回按主机名排序的列表,其中第二列是与每个主机名关联的用户名列表?我可以看到如何使用像 py 这样的脚本语言来执行此操作,但是它可以作为标准 SQL 查询吗?

如果我这样做

SELECT hostname, count(distinct(username)) 
FROM comments
GROUP BY hostname

我几乎得到了正确的结果,除了它只给我与每个主机名相关联的用户名的数量,而不是与每个主机名相关联的用户名的实际列表......尝试在它周围没有 count() 的情况下尝试 distinct(username) 返回语法错误。

最佳答案

我认为最简洁的方法是只选择不同的行并在必要时在客户端重新格式化:

SELECT DISTINCT hostname, username
FROM comments
ORDER BY hostname, username

或者,如果您想要连接结果,您可以使用 GROUP_CONCAT :

SELECT hostname, GROUP_CONCAT(DISTINCT username) as usernames
FROM comments
GROUP BY hostname

关于sql - 一张表两列MYSQL查询挑战,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3082817/

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