gpt4 book ai didi

sql - 有计数是行不通的

转载 作者:行者123 更新时间:2023-11-29 14:15:05 25 4
gpt4 key购买 nike

我不确定我今天早上做了什么,但我的头一定很重

这是我的问题

select c.id as cid,c.studentid as cstudentid              
from certification c
group by c.id,c.studentid
order by c.studentid

我的结果是这样的

 cid studentid
35267 6400
5332 6401
35271 6402
144024 6402
252727 6402
434317 6402
529734 6405
...

我想要像6402那样重复两次以上的学号

我试过这样的基本查询

select c.id as cid,c.studentid as cstudentid              
from certification c
group by c.id,c.studentid
having count(c.studentid) > 2
order by c.studentid

输出为空/无/无表...

系统:Postgres 9.3

我做错了什么?

最佳答案

您的查询不符合您的期望。它返回每行计数为一的所有行。因为您已经对两列进行了分组。它也找不到要聚合的相关行。因此,您可以更改查询以按一列 (c.studentId) 对其进行分组并在另一列 (c.id) 上聚合。它可能像下面的代码:

select count(c.id), c.studentid as cstudentid              
from certification c
group by c.studentid
having count(c.id) > 2
order by c.studentid

如果您需要重复的 c.id,您应该编写一个 CTE 查询。 this post的第二个答案会帮助你。

关于sql - 有计数是行不通的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52001104/

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