Sql查找断号区间...
2007-03-17 10:30
162 查看
---问题----
--查找断号区间
--建立測試環境
Create Table TEST
(ID Int)
--插入數據
Insert TEST Select 1
Union All Select 2
Union All Select 5
Union All Select 6
Union All Select 8
Union All Select 9
Union All Select 10
Union All Select 11
Union All Select 16
GO
--測試
Select
Rtrim(A.ID) + '-' + Rtrim(Min(B.ID)) As 断号区间
From
(Select
T.ID + 1 As ID
From
TEST T
Where Not Exists(Select ID From TEST Where ID = T.ID + 1)) A
Inner Join
(Select
T.ID - 1 As ID
From
TEST T
Where Not Exists(Select ID From TEST Where ID = T.ID - 1)) B
On A.ID <= B.ID
Group By A.ID
GO
--刪除測試環境
Drop Table TEST
--結果
/*
断号区间
3-4
7-7
12-15
*/
--查找断号区间
--建立測試環境
Create Table TEST
(ID Int)
--插入數據
Insert TEST Select 1
Union All Select 2
Union All Select 5
Union All Select 6
Union All Select 8
Union All Select 9
Union All Select 10
Union All Select 11
Union All Select 16
GO
--測試
Select
Rtrim(A.ID) + '-' + Rtrim(Min(B.ID)) As 断号区间
From
(Select
T.ID + 1 As ID
From
TEST T
Where Not Exists(Select ID From TEST Where ID = T.ID + 1)) A
Inner Join
(Select
T.ID - 1 As ID
From
TEST T
Where Not Exists(Select ID From TEST Where ID = T.ID - 1)) B
On A.ID <= B.ID
Group By A.ID
GO
--刪除測試環境
Drop Table TEST
--結果
/*
断号区间
3-4
7-7
12-15
*/
相关文章推荐
- SQL 整型类弄的数据按区间查找
- Sql查找断号区间...
- SQL查找删除重复行
- SQL查找删除重复行
- MySQL查找价格最高的图书经销商的几种SQL语句
- 常用的SQL 查找语句
- sql 2000中在查找某个字符串内容位置(不知道表名,字段名)
- SQL不重复查找数据及把一列多行内容拼成一行
- POJ 3264 Balanced Lineup(RMQ查找区间最值)
- HIVE SQL 的三种查找当前日期
- SQL: 查找空值
- lintcode二叉查找树中搜索区间 java
- Oracle中SQL语句执行效率的查找与解决
- 二分查找求函数的区间最小值&&http://acm.hdu.edu.cn/showproblem.php?pid=2899
- 在雇员表中查找第二高的工资SQL语句助记
- 数据库中查找重复记录和删除重复记录的sql
- HDU 2087 剪花布条(KMP查找不交叉区间的模式串个数)
- ORACLE数据库中查找用户、角色、权限的SQL汇总(转发)
- SQL 查询性能优化----解决书签查找
- 查找数据库中重复数据T-SQL