请问下面这个SQL语句如何写?10分送上(10分)

  • 主题发起人 主题发起人 wwei656
  • 开始时间 开始时间
W

wwei656

Unregistered / Unconfirmed
GUEST, unregistred user!
数据结构如下:
类别 件号 年度
A 00501 2000
A 00502 2000
A 00101 2000
A 00202 2000
A 00203 2001
C 00201 2000
D 00101 2001
D 00100 2001
要求按类别统计时只统计件号(jh)的前三位(卷号)不同的个数,前三位为卷号,后两位为卷内文件的顺序号。统计结果如下:
年度 A B C D
2000 3 0 1 0
2001 1 0 0 1
注:A类中,JH前三位的分别为 005、001、002,故A类的卷数为3。
 
有點難哦
幫你頂
 
这是取子字符串的问题。由于各个数据库取前三位的函数不同,我现在假设取前三位的函数为sub(字段,0,3)。下面的sql语句里也这样写,楼主应用时请针对不同的数据库将正确的函数代入并相应修改参数即可。
select 类别,年度,count(distinct sub(件号,0,3)) as 件数
from 表明
group by 类别,年度

结果应该是这样的:
类别 年度 件数
A 2000 3
A 2001 1
C 2000 1
等等
 
谢谢iambox!这两天出差了,才回来。似乎明白了点。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
624
import
I
后退
顶部