id layer name
1 1 aa
2 2 bb
4 3 cc
3 4 dd
5 6 aa1
6 3 bb1
7 2 cc1
8 3 dd1
9 4 ee1
10 5 ff1
11 2 11
12 2 22
13 3 33用什么语句能取出id=4的layer值为3时,从layer的值3到下一个layer>=3时这中间的数据出来,如下表:
4 3 cc
3 4 dd
5 6 aa1
6 3 bb1
(ID=7的时候,layer=2时小于3了就终止取数据了)当id=8,layer=3取出的数据如下:
8 3 dd1
9 4 ee1
10 5 ff1
(到id=11时,layer的值小于3了)也就是按id排序取的数据当从layer=4值开始时一直到值还是>=4的时候列出来的数据,
1 1 aa
2 2 bb
4 3 cc
3 4 dd
5 6 aa1
6 3 bb1
7 2 cc1
8 3 dd1
9 4 ee1
10 5 ff1
11 2 11
12 2 22
13 3 33用什么语句能取出id=4的layer值为3时,从layer的值3到下一个layer>=3时这中间的数据出来,如下表:
4 3 cc
3 4 dd
5 6 aa1
6 3 bb1
(ID=7的时候,layer=2时小于3了就终止取数据了)当id=8,layer=3取出的数据如下:
8 3 dd1
9 4 ee1
10 5 ff1
(到id=11时,layer的值小于3了)也就是按id排序取的数据当从layer=4值开始时一直到值还是>=4的时候列出来的数据,
解决方案 »
- Eclipse+Mysql下开发,如何根据数据库中的一张表的内容生成数据库中的另一张表,求大虾帮帮忙,万分感谢!!!
- 64位系统Mysql安装问题?
- mysql 分区 (2)
- mysql新建用户疑惑
- Access denied for user 'SYSTEM'@'localhost' (using password: NO)
- java连接mysql出现的问题?~
- PostgreSQL主键是serial类型,但无法建立外键?
- error1030/1016 及 表错误,帮帮忙!
- Hibernate用sql查询mysql的char类型字段问题
- 我的MySQL数据库表怎么保存不了中文
- 硬盘环了,没做备份,mysql数据库还能恢复吗?
- 把csv文件到postgresql中
select id from tab where layer=3 and id=4 2 结束的id:
select id=min(id) from tab where layer=3 and id>4 3 结果集:
declare @id int,@layer int
select @id=4 , @layer=3 -- 要查询的参数
select *
from tab
where 1=1
and id >= (select id from tab where layer=@layer and id=@id) /*开始的id*/
and id <= (select id=min(id) from tab where layer=@layer and id>@id) /*结束的id*/
from table3 c,
(
select a.id,min(b.id) as maxID
from table3 b,
(
select id,layer
from table3
where id=4 --the number you need // liuyann
) a
where b.id>a.id and b.layer<a.layer
group by a.id
) d
where c.id >=d.id and c.id<d.maxidsource
id layer name
1 1 aa
2 2 bb
3 4 dd
4 3 cc
5 6 aa1
6 3 bb1
7 2 cc1
8 3 dd1
9 4 ee1
10 5 ff1
11 2 11
12 2 22
13 3 33id=4
id layer name
4 3 cc
5 6 aa1
6 3 bb1
id=8
id layer name
8 3 dd1
9 4 ee1
10 5 ff1