12
返回列表 发新帖
楼主: ceo_lxy

求大神帮助一条SQL

[复制链接]
求职 : 技术/实施/服务顾问
论坛徽章:
13
2010新春纪念徽章
日期:2010-01-04 08:33:08乌索普
日期:2021-12-15 11:17:23蒙奇·D·路飞
日期:2018-01-24 11:35:00秀才
日期:2017-12-12 10:15:21秀才
日期:2017-07-11 13:54:022014年世界杯参赛球队: 意大利
日期:2014-07-03 23:09:59ITPUB社区千里马徽章
日期:2013-06-09 10:15:34咸鸭蛋
日期:2013-05-10 14:58:29鲜花蛋
日期:2012-12-01 08:43:34茶鸡蛋
日期:2011-09-07 08:51:11
11#
 楼主| 发表于 2017-2-25 07:53 | 只看该作者
本帖最后由 ceo_lxy 于 2017-2-25 07:56 编辑

@newkid ,大师,完美解决,
太感谢了!看来PLSQL博大精深呀,

使用道具 举报

回复
求职 : 技术/实施/服务顾问
论坛徽章:
13
2010新春纪念徽章
日期:2010-01-04 08:33:08乌索普
日期:2021-12-15 11:17:23蒙奇·D·路飞
日期:2018-01-24 11:35:00秀才
日期:2017-12-12 10:15:21秀才
日期:2017-07-11 13:54:022014年世界杯参赛球队: 意大利
日期:2014-07-03 23:09:59ITPUB社区千里马徽章
日期:2013-06-09 10:15:34咸鸭蛋
日期:2013-05-10 14:58:29鲜花蛋
日期:2012-12-01 08:43:34茶鸡蛋
日期:2011-09-07 08:51:11
12#
 楼主| 发表于 2017-2-25 08:01 | 只看该作者
同时也谢谢@alexandre2008的思路

使用道具 举报

回复
论坛徽章:
1
秀才
日期:2016-11-25 16:52:36
13#
发表于 2017-2-25 17:10 | 只看该作者
newkid 发表于 2017-2-25 00:50
按行展示:
with t1 as (
select 'a' prj_name, 'penson1'prj_owner,sysdate-70 start_date,sysdate end_ ...

学习了

使用道具 举报

回复
论坛徽章:
30
生肖徽章:猴
日期:2015-03-20 10:13:49ITPUB 11周年纪念徽章
日期:2012-10-23 16:55:31优秀写手
日期:2015-03-07 06:00:14沸羊羊
日期:2015-03-13 13:26:07美羊羊
日期:2015-04-06 20:32:13天蝎座
日期:2015-07-20 12:34:47射手座
日期:2015-09-18 12:38:55乌索普
日期:2016-08-03 07:04:28奥运会纪念徽章:手球
日期:2016-09-26 07:19:26山治
日期:2016-10-19 05:48:10
14#
发表于 2017-2-28 16:28 | 只看该作者
newkid 发表于 2017-2-25 00:50
按行展示:
with t1 as (
select 'a' prj_name, 'penson1'prj_owner,sysdate-70 start_date,sysdate end_ ...

请问为何connect by id=prior id是循环,而加了 and prior sys_guid() is not null就不是循环了?

使用道具 举报

回复
论坛徽章:
520
奥运会纪念徽章:垒球
日期:2008-09-15 01:28:12生肖徽章2007版:鸡
日期:2008-11-17 23:40:58生肖徽章2007版:马
日期:2008-11-18 05:09:48数据库板块每日发贴之星
日期:2008-11-29 01:01:02数据库板块每日发贴之星
日期:2008-12-05 01:01:03生肖徽章2007版:虎
日期:2008-12-10 07:47:462009新春纪念徽章
日期:2009-01-04 14:52:28数据库板块每日发贴之星
日期:2009-02-08 01:01:03生肖徽章2007版:蛇
日期:2009-03-09 22:18:532009日食纪念
日期:2009-07-22 09:30:00
15#
发表于 2017-2-28 22:59 | 只看该作者
阿吉2009 发表于 2017-2-28 16:28
请问为何connect by id=prior id是循环,而加了 and prior sys_guid() is not null就不是循环了?

Oracle会把CONNECT BY条件中那些PRIOR表达式的每一层值保存起来,如果某个值以前出现过,它就认为是有CYCLE。
SYS_GUID保证每次出现都不一样,这样就骗过了它。

使用道具 举报

回复
论坛徽章:
30
生肖徽章:猴
日期:2015-03-20 10:13:49ITPUB 11周年纪念徽章
日期:2012-10-23 16:55:31优秀写手
日期:2015-03-07 06:00:14沸羊羊
日期:2015-03-13 13:26:07美羊羊
日期:2015-04-06 20:32:13天蝎座
日期:2015-07-20 12:34:47射手座
日期:2015-09-18 12:38:55乌索普
日期:2016-08-03 07:04:28奥运会纪念徽章:手球
日期:2016-09-26 07:19:26山治
日期:2016-10-19 05:48:10
16#
发表于 2017-3-1 09:19 | 只看该作者
newkid 发表于 2017-2-28 22:59
Oracle会把CONNECT BY条件中那些PRIOR表达式的每一层值保存起来,如果某个值以前出现过,它就认为是有CYC ...

明白了。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表