网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.不安装ORACLE客户端的系统移植方.
.Linux信号简介.
.Oracle Spatial自定义临时表实现.
.在oracle中如何有效应用时间的有.
.oracle中用创建表时Storage中参数.
.ORACLE入门之简析REDO LOGFILE.
.用Oracle数据表绑定DataGrid.
.ExactPapers Oracle 1Z0-001 200.
.Oracle常见错误代码.
.在Oracle9i内向给定的表对象内插.
.建立数据库认证的FTP.
.正确的数据库设计确保了数据完整.
.oracle里long类型的总结.
.快速解决Oracle数据库10g导出错误.
.导入数据后编译所有对象的脚本.
.递归程序的应用.
.oracle学习的好书和网站.
.如何用变量传递表名实现删除表的.
.一个小巧但好用的数据库压缩算法.
.Oracle数据库表与视图.

数据库中如何使用SQL查询连续号码段

发表日期:2008-2-9


在ITPUB上有一则非常巧妙的SQL技巧,学习一下,记录在这里。 最初的问题是这样的:
我有一个表结构,
fphm,kshm
2014,00000001
2014,00000002
2014,00000003
2014,00000004
2014,00000005
2014,00000007
2014,00000008
2014,00000009
2013,00000120
2013,00000121
2013,00000122
2013,00000124
2013,00000125 (第二个字段内可能是连续的数据,可能存在断点。) 怎样能查询出来这样的结果,查询出连续的记录来。
就像下面的这样?
2014,00000001,00000005
2014,00000009,00000007
2013,00000120,00000122
2013,00000124,00000125 
ITPUB上的朋友给出了一个非常巧妙的答案: SQL> SELECT b.fphm, MIN (b.kshm) Start_HM, MAX (b.kshm) End_HM
2 FROM (SELECT a.*, TO_NUMBER (a.kshm - ROWNUM) cc
3 FROM (SELECT *
4 FROM t
5 ORDER BY fphm, kshm) a) b
6 GROUP BY b.fphm, b.cc
7 / FPHM START_HM END_HM
---------- -------- --------
2013 00000120 00000122
2013 00000124 00000125
2014 00000001 00000005
2014 00000007 00000009
巧思妙想,就在一念之间。
上一篇:在数据字典中直接修改表列的名称和顺序 人气:729
下一篇:关于oracle存储过程的若干问题备忘 人气:1324
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐