注册 登录
编程论坛 SQL Server论坛

查询语句的问题

23760639 发布于 2006-11-03 13:06, 696 次点击

问大家个问题:就是表里有个字段:ID,值都是这样的G306SN1000001或者G506SN1000001或者Y506SN1000001。就是
1.我想要分组查询,就是把以G开头的放在一组,把以Y开头的放在一组,全部查询归列出来。以便统计编号以G开头的共有几个。编号以Y开头的共有几个?

2.后面还有要以编号的前两个字母来分组的。
比如把前两个字母为G3的放在一起。Y1的放在一起,Y2的放在一起 ,以便统计编号以G3.Y1.Y2开头的各自共有几条记录.
这两个查询语句怎么写,谢谢!


[此贴子已经被作者于2006-11-3 13:10:09编辑过]

9 回复
#2
潇洒老乌龟2006-11-03 15:54
这是显示
select id from tb order by left(id,1)
这是统计
select left(id , 1) as id , count(*) as cnt from tb group by left(id,1)

第二个问题和第一个问题一样.left(id,2)
#3
LouisXIV2006-11-03 17:02

用一下case语句就可以了

#4
bygg2006-11-03 20:14
LouisXIV  你好像很喜欢用 case 哦,呵呵。
#5
潇洒老乌龟2006-11-04 11:25
用一下case语句就可以了
???

不对.你试先不知道他有些什么字母.
只能取第一位然后分组
#6
LouisXIV2006-11-04 12:36
以下是引用潇洒老乌龟在2006-11-4 11:25:22的发言:
用一下case语句就可以了
???

不对.你试先不知道他有些什么字母.
只能取第一位然后分组

以下是引用23760639在2006-11-3 13:06:18的发言:

问大家个问题:就是表里有个字段:ID,值都是这样的G306SN1000001或者G506SN1000001或者Y506SN1000001。就是
1.我想要分组查询,就是把以G开头的放在一组把以Y开头的放在一组,全部查询归列出来。以便统计编号以G开头的共有几个。编号以Y开头的共有几个?

2.后面还有要以编号的前两个字母来分组的。
比如把前两个字母为G3的放在一起Y1的放在一起,Y2的放在一起 ,以便统计编号以G3.Y1.Y2开头的各自共有几条记录.
这两个查询语句怎么写,谢谢!



#7
千里冰封2006-11-04 12:59
都是高手
#8
棉花糖ONE2007-03-01 22:59

LouisXIV说的case是要和sum结合使用的

#9
xu20002007-03-01 23:05
你在着考古呢。
#10
棉花糖ONE2007-03-02 00:00
今晚没事干
1