SELECT T5.DM,
成都创新互联公司主营湟源网站建设的网络公司,主营网站建设方案,重庆APP开发公司,湟源h5微信小程序定制开发搭建,湟源网站营销推广欢迎湟源等地区企业咨询
T6.DC || T5.DC AS DC
FROM (SELECT T2.DM,
T2.DC,
ROWNUM AS RN1
FROM (SELECT T.DM,
T.DC
FROM TEST T
ORDER BY T.DM) T2) T5,
(SELECT T4.DM,
T4.DC,
ROWNUM AS RN2
FROM (SELECT T3.DM,
T3.DC
FROM TEST T3
ORDER BY T3.DM) T4) T6
WHERE T6.RN2(+) = T5.RN1 - 1
AND SUBSTR(T6.DM(+), 1, 3) = SUBSTR(T5.DM, 1, 3)
ORDER BY T5.DM
不知道是不是要这个结果,我用的表名是test。
但是个人觉得你最好还是构造一个树形表的结果来做比较好
INSERT INTO PRODUCT (ProductID,......,Recordcount) VALUES(.....,'-','-',.....) 或者是(.....,null,null,.....)
1:set hea off。
2:set linesize 50行设置短一些。
3:set wrap on让sqlplus自动换行。
1:Oracle Database[1]是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。作为一个通用的数据库系统,它具有完整的数据管理功能。
2:作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用。
3:系统具有:可用性强、可扩展性强、数据安全性强、稳定性强等优点。
给你一个提示,Oracle每行数据都会有一个ROWID,解析出行号。你可以找到上一行的ROWID和下一行的ROWID,而且用ROWID查询,效率非常高!!!
如果你是要排序过的数据,只能用索引组织表。或者先排序,用分析函数得到一个编号伪劣,然后根据这个编号再找前一条,或者后一条。
另外,Oracle SQL中还有一个函数,LEAD,可以找到上一行的值,当然还有一个下一行的值。可以百度一下,我不太记得了。
如:
SELECT last_name, hire_date,
LEAD(hire_date, 1) OVER (ORDER BY hire_date) AS "NextHired"
FROM employees WHERE department_id = 30;
l (或L)
linux的话输入
sqldefine_editor=vi
然后每次只需要输入ed就能进入vi编辑模式了。完成后只需要输入“/”就能重新执行编辑好的内容。
windows的话直接输入edit就能修改缓存区里的内容了。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款