我有一个表,大概数据是这样的: 主叫号码 被叫号码 开始时间 结束时间 通话时长
855225522 855225500 09:49:53 09:50:16 23
.......
.......
....... 我想要个总计,如何写,例如:
主叫号码 被叫号码 开始时间 结束时间 通话时长
855225522 855225500 09:49:53 09:50:16 23
.......
.......
.......
总计 123因为要每一条记录的明细,所以不能用分组。而用以下联合查询:select 主叫号码,被叫号码,开始时间,结束时间,通话时长 from tb
union all
select '总计','','','',sum(通话时长) as 通话时长 from tb由于有时间类型字段,则不会为空的,而是会产生一些无用时间;
求一个解决的办法
855225522 855225500 09:49:53 09:50:16 23
.......
.......
....... 我想要个总计,如何写,例如:
主叫号码 被叫号码 开始时间 结束时间 通话时长
855225522 855225500 09:49:53 09:50:16 23
.......
.......
.......
总计 123因为要每一条记录的明细,所以不能用分组。而用以下联合查询:select 主叫号码,被叫号码,开始时间,结束时间,通话时长 from tb
union all
select '总计','','','',sum(通话时长) as 通话时长 from tb由于有时间类型字段,则不会为空的,而是会产生一些无用时间;
求一个解决的办法
union all
select '总计','','','',sum(通话时长) as 通话时长 from tb
union all
select '总计','','','',sum(通话时长) as 通话时长 from tb --如果你开始时间, 结束时间的类型是datetime型
select 主叫号码,被叫号码,convert(varchar(8),开始时间,114) 开始时间,convert(varchar(8),结束时间,114) 结束时间,通话时长 from tb
union all
select '总计','','','',sum(通话时长) as 通话时长 from tb
union all
select '总计','','','',sum(通话时长) as 通话时长 from tb
结束时间=substring(cast(开始时间 as varchar) 开始时间,10,18),通话时长 from tb
union all
select '总计','','','',sum(通话时长) as 通话时长 from tb
union all
select '总计','','','',sum(通话时长) as 通话时长 from tb