group by函数的用法(sql 中group by 怎样用)

本文目录
sql 中group by 怎样用
group by 顾名思义就是分组的意思,就是对查询的结果按group by 后面的指定列分组,常和聚合函数一块使用。如sum,count等。如果用group by分组了,则后面如果要跟条件语句就不用where了,用having子句对分组的结果给与条件限制。具体怎么使用你看几个用group by语句的例子,再看查询结果的排列就知道了。比我再说一大通管用得多。
【100分求指点】Group By这么用为什么不对
************
oracle中:
************
select a.AH,a.BGXH,wm_concat(b.罪名字段)
from B_BGRZM a inner join B_AY b on a.ZM=b.DM
where a.AH=12345
group by a.AH,a.BGXH
order by a.BGXH;
实现效果(为了说明方便,以|分割字段):
12345|排列序号1|罪名1,罪名2,罪名3,罪名4
12345|排列序号2|罪名1,罪名2,罪名3
12345|排列序号3|罪名1,罪名2,罪名3,罪名4,罪名5
。。。
************
SqlServer中如果想实现上面的效果,比较麻烦,不过按照你的意思,下面的写法是可行的。(很有可能是你的想法错了):
************
select a.AH,a.BGXH,b.罪名字段
from B_BGRZM a inner join B_AY b on a.ZM=b.DM
where a.AH=12345
group by a.AH,a.BGXH
order by a.BGXH;
实现效果(为了说明方便,以|分割字段):
12345|排列序号1|罪名1
12345|排列序号1|罪名2
12345|排列序号2|罪名1
12345|排列序号2|罪名2
12345|排列序号2|罪名3
12345|排列序号2|罪名4
12345|排列序号3|罪名1
12345|排列序号3|罪名2
。。。
***********
再说明一下,group by的用法中一个最基本的原则:
***********
1、select后面有的字段一定要在group by后面存在
select * from B_BGRZM
where BH=12345
GROUP BY BGXH;
是不可以的【*】代表全部字段,group by后面只有一个【BGXH】。
2、group by 后面有的字段,select 后面可以没有。
select BGXH from B_BGRZM
where BH=12345
GROUP BY AH,BGXH;
这样是可以的。
---
以上,希望对你有所帮助。

更多文章:
issued retroactively(FORM E上盖“ISSUED RETROACTIVELY”的问题,小女在线等待)
2026年10月15日 10:30
begin和start的区别(start与begin的区别)
2026年10月15日 09:20
vant官网中文(范特365 是韩国化妆品VANT36.5吗)
2026年10月15日 09:10
prison break(越狱(prison break)到底是在讲个什么)
2026年10月15日 06:50
c程序设计第五版教学视频(求C程序设计(第五版)谭浩强教材源代码、视频课件等电子版资料!谢谢大家!)
2026年10月15日 06:40
十六进制转二进制表(16进制转为2进制、8进制、10进制的公式)
2026年10月15日 06:10




