1. sql语句 group by子句后的分组项如果有多个是怎样进行分组的
select 列名1,列名2,列名3,列名4
from 表名
where 条件
group by A,B
group by A,B这句的意思就是按A分组,当分组后再在分组后再按B分组
2. SQL 排序 之后 再分组
select * from (select max(no) as no,id from t1 group by id) order by no
t1是表名
3. 使用sql的分组函数之后,怎样在被分组的数据
sqlserver 分组函数,请参阅:
sqlserver分组开窗函数的用法
用这些函数,分组后,可以实现分组内部编号排序,例:
createtableA([姓名]nvarchar(20),[订单数]int,[订单日期]datetime)
go
insertintoA([姓名],[订单数],[订单日期])values('www.maomao365.com',1900,'2014-5-6')
insertintoA([姓名],[订单数],[订单日期])values('www.maomao365.com',1800,'2018-5-6')
insertintoA([姓名],[订单数],[订单日期])values('www.maomao365.com',1800,'2018-5-6')
insertintoA([姓名],[订单数],[订单日期])values('小张',100,'2013-5-6')
insertintoA([姓名],[订单数],[订单日期])values('小明',2600,'2013-1-6')
insertintoA([姓名],[订单数],[订单日期])values('小明',1800,'2013-5-6')
insertintoA([姓名],[订单数],[订单日期])values('小李',888,'2017-3-6')
go
/*row_number返回分组后的连续排序,不会出现重复的排序值*/
selectrow_number()over(partitionby[姓名]orderby[订单日期]desc)askeyId,*fromA
/*rank返回分组后的连续排序,会出现跳跃排序值*/
selectrank()over(partitionby[姓名]orderby[订单日期]desc)askeyId,*fromA
/*dense_rank返回分组后的连续排序,不会出现跳跃排序值,但是会出现重复的排序值*/
selectdense_rank()over(partitionby[姓名]orderby[订单日期]desc)askeyId,*fromA
go
truncatetableA
droptableA
4. SQL 分组统计,再合并组
select 组名2 as 组名, 产品2 as 产品,sum(数量) as 数量
from
(select case when 组名 = 'A1' then 'A' when 组名 = 'B1' then 'B' else 组名 end as 组名2,case when 组名 = 'A1' then 'aa' when 组名 = 'B1' then 'bb' else 产品 end as 产品2 ,数量
from 表
) tb
group by 组名2, 产品2
5. sql子查询可以再分组吗
肯定可以的。
子查询的结果集也是可以当作一个新的数据表看待,而在SQL语句中,任何数据集都是可以进行分组、排序等常规操作。
6. sql语句 按一列分组 然后再按别一列组内排序
sql 按 group 单纯的对unitname 分组查询后 是 "统计数据" ,不存在组内情况,并不会带有 voucherID,不能排序,对 voucherID 的排序也是无意义。
或者说你按 unitname、voucherID 俩个分组,然后 按voucherID 排序,这个是可以实现的。
7. 使用SQL语句进行表连接后再分组该怎么写呢
select stuinfo.学号,stuinfo.姓名,avg(grade.分数)as 平均成绩 from stuinfo,grade where stuinfo.学号=grade.学号
group by stuinfo.学号,stuinfo.姓名
8. sql 分组再分组 语句怎么写
select * from sxh where kicket_n in (select kicket_n from sxh group by kicket_n having count(*)>1)
and czy in (select czy from sxh group by czy having count(*)>1)
9. sql 分组再分组 语句怎么写
似乎上面这几个答案都不能满足要求。我自己也没与想出来该怎么查询。
可是我觉得既然你已经说了票是不能重复的,也就是说它的值应该是unique或者说它是primary key。为什么在设置的时候不能设为主键呢?
票和操作员是1:M的关系,另外票和金额也是1:M的关系,操作员和金额是N:M的关系。你可以将(ticket_n,rmb)设为主键,这样一个元组就能由这两个属性来决定,就会得到你想要的结果
ticket_n czy rmb
01 001 50
01 001 100
01 001 80
01 002 30
01 002 20
(其实还是有点不懂你对题目所设的要求,具体可以给我发信息,网络hi一下)