jgm kz sl rq
0102010580 p 500 2007-7-5 0:00:00
0102010580 z 100 2007-7-5 0:00:00
0102010580 f 50 2007-7-5 0:00:00
0103020525 p 1000 2007-8-5 0:00:00
0103020525 z 250 2007-8-5 0:00:00
0103020525 f 100 2007-8-5 0:00:00
0103020525 p 1000 2007-5-1 0:00:00
0102010580 z 250 2007-5-25 0:00:00
0103040535 p 500 2007-8-20 0:00:00
0103040535 z 100 2007-8-20 0:00:00
0103040535 f 50 2007-8-20 0:00:00
0103040535 f 50 2007-5-20 0:00:00
我想得到下面的结果
jgm kz(p)sl kz(z)sl kz(f)sl
0102010580 500 350 50
0103020525 2000 250 100
0103040535 500 100 100
得到一个jgm下kz为p,为z,为f的总的数量sl
0102010580 p 500 2007-7-5 0:00:00
0102010580 z 100 2007-7-5 0:00:00
0102010580 f 50 2007-7-5 0:00:00
0103020525 p 1000 2007-8-5 0:00:00
0103020525 z 250 2007-8-5 0:00:00
0103020525 f 100 2007-8-5 0:00:00
0103020525 p 1000 2007-5-1 0:00:00
0102010580 z 250 2007-5-25 0:00:00
0103040535 p 500 2007-8-20 0:00:00
0103040535 z 100 2007-8-20 0:00:00
0103040535 f 50 2007-8-20 0:00:00
0103040535 f 50 2007-5-20 0:00:00
我想得到下面的结果
jgm kz(p)sl kz(z)sl kz(f)sl
0102010580 500 350 50
0103020525 2000 250 100
0103040535 500 100 100
得到一个jgm下kz为p,为z,为f的总的数量sl
解决方案 »
- insert into语句询问
- 请问大虾:如何让把单选按钮的值写进数据库?
- 在SQL中用什么语句检查变量的值?
- SSRS 中如何获得一个data instance下面的report server DB 的名字??
- 使用什么样的SQL语句能够列出所有货品第一次进货的记录,就说日期是最早的那次。
- 询问!SQL Server (MSSQLSERVER) 服务因 17051 (0x429B) 服务性错误而停止。
- 〓★★★〓 存储过程分页: 对于非唯一值字段排序 有没有好的解决方法?
- 如何向表格中的某一个字段插入10M的数据,或者更多的数据???
- SELECT表某字段重复记录中任一条
- 高分求教:Sql Server中@variable動態輸入和輸出的方法(在線等待中)
- 数据项同,项字符定义不同应该怎么导?
- sql server 2000 数据库连接?
jgm,
sum(case kz when 'p' then sl end),
sum(case kz when 'z' then sl end),
sum(case kz when 'f' then sl end)
from
表
group by
jgm
Select
jgm,
SUM(Case kz When 'p' Then sl Else 0 End) As [kz(p)sl],
SUM(Case kz When 'z' Then sl Else 0 End) As [kz(z)sl],
SUM(Case kz When 'f' Then sl Else 0 End) As [kz(f)sl]
From
表
Group By
jgm
jgm,
[kz(p)sl] = SUM(Case When kz = 'p' Then sl Else 0 End),
[kz(z)sl] = SUM(Case When kz = 'z' Then sl Else 0 End),
[kz(f)sl] = SUM(Case When kz = 'f' Then sl Else 0 End)
From
表
Group By
jgm
jgm,
SUM(Case kz When 'p' Then sl Else 0 End) As [kz(p)sl],
SUM(Case kz When 'z' Then sl Else 0 End) As [kz(z)sl],
SUM(Case kz When 'f' Then sl Else 0 End) As [kz(f)sl]
From
表
Where
rq Between '2007-06-30' And '2007-09-30'
Group By
jgm或者
Select
jgm,
[kz(p)sl] = SUM(Case When kz = 'p' Then sl Else 0 End),
[kz(z)sl] = SUM(Case When kz = 'z' Then sl Else 0 End),
[kz(f)sl] = SUM(Case When kz = 'f' Then sl Else 0 End)
From
表
Where
rq Between '2007-06-30' And '2007-09-30'
Group By
jgm
Else 0 End这句话是什么意思啊,别笑啊
------------
聯繫幫助上看看case的用法