本月博客排行
-
第1名
Xeden -
第2名
fantaxy025025 -
第3名
bosschen - paulwong
- johnsmith9th
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - gengyun12
- wy_19921005
- vipbooks
- e_e
- benladeng5225
- wallimn
- ranbuijj
- javashop
- jickcai
- fantaxy025025
- zw7534313
- qepwqnp
- robotmen
- 解宜然
- ssydxa219
- sam123456gz
- zysnba
- sichunli_030
- tanling8334
- arpenker
- gaojingsong
- xpenxpen
- kaizi1992
- wiseboyloves
- jh108020
- xyuma
- ganxueyun
- wangchen.ily
- xiangjie88
- Jameslyy
- luxurioust
- mengjichen
- lemonhandsome
- jbosscn
- nychen2000
- zxq_2017
- lzyfn123
- wjianwei666
- forestqqqq
- ajinn
- siemens800
- hanbaohong
- 狂盗一枝梅
- java-007
- zhanjia
- 喧嚣求静
- Xeden
最新文章列表
逗号分隔字符串为集合
SELECT DISTINCT REGEXP_SUBSTR ('a,b,c','[^,]+',1,LEVEL) as "token"
FROM DUAL
CONNECT BY REGEXP_SUBSTR ('a,b,c','[^,]+',1,LEVEL) IS NOT NULL
ORACLE CONNECT BY 学习
语法格式:
select [level], column, expr... from table
[where condition]
start with condition
connect by [prior column1= column2 |column1 = prior column2];
层次查询是通过start with和connect by子句标识的: ...
[Oracle] 利用START WITH显示树形结构
--显示上下级关系
SELECT EMPNO, ENAME, LEVEL, MGR
FROM SCOTT.EMP
START WITH MGR IS NULL
CONNECT BY PRIOR EMPNO = MGR;
--利用LPAD每一级添加4个空格
SELECT LPAD(' ', 4 * LEVEL - 4) ...
connect by 例子(转)
原文地址:http://blog.163.com/termie_gongzhen/blog/static/1200243362009516114844293/?fromdm&fromSearch&isFromSearchEngine=
connect by 例子 2009-06-16 11:48:44| 分类: IT技术 | 标签: |举报 |字号大
中
小 订阅
层次查询 ...
使用connect by进行级联查询
使用connect by进行级联查询
connect by可以用于级联查询,常用于对具有树状结构的记录查询某一节点的所有子孙节点或所有祖辈节点。
来看一个示例,现假设我们拥有一个菜单表t_menu,其中只有三个字段:id、name和parent_id。它们是具有父子关系的,最顶级的菜单对应的parent_id为0。现假设我们拥有如下记录:
i ...
oracle-层次化查询
1、层次化查询
层次化:同一数据库表中多条数据存在父子关系,形成树状结构。
利用connect by 进行层次化查询
按照某种规则,获得节点路径上的节点集合。
如:
select * from market
start with m_id = 10
connect by prior p_id = m_id;
查询出m_id为14的记录其所有的父级记录。
start with m_id = 10 ...
mysql数据库实现类似oracle connect by prior的查询
--注下面的语句用到了表
DROP TABLE IF EXISTS `a_sys_org`;
CREATE TABLE `a_sys_org` (
`org_id` varchar(32) NOT NULL COMMENT '机构号',
`org_name` varchar(256) NOT NULL COMMENT '机构名称',
`parent_org_id` varchar(32) ...
oracle 树结构查询
SELECT RPAD(' ', 4 * (LEVEL-1), '--') || name as name,
CONNECT_BY_ROOT name "ROOT",
CONNECT_BY_ISLEAF "ISLEAF",
LEVEL,
t.*,
SYS_CONNECT_BY_PATH(t. ...
oracle connect by prior 的用法
connect by 是结构化查询中用到的,
示例表:
CREATE TABLE DEPT(
DEPTNO NUMBER(10) NOT NULL,
DEPTNAME VARCHAR2(20),
UPPERDEPTNO NUMBER(10)
)
用法1:从子结点往上查.
select * from dept start with dept is not null connec ...
按小时,天,周,月进行查询
按小时统计
查询当天存在的所有时刻 即00-23时刻
SELECT sdays + (LEVEL - 1) / 24 dates
FROM (SELECT TO_DATE('2012-01-05' || '00', 'yyyy-MM-dd HH24') sdays,
TO_DATE('2012-01-05' || '23', 'yyyy-MM-dd HH24') e ...
Oracle Connect By Start With 使用总结
Oracle 实在太强了,本篇文章详细介绍了Oracle的递归查询语法,利用此语法,可以方便地实现递归的双向查询:
-- Tirle : Recursion query for TREE with "connect by/start with"
-- Author : Rake Gao
-- Create Date : 2005-08-22
-- Ve ...
oracle 的 CONNECT BY 和START WITH
在SELECT命令中使用CONNECT BY 和START WITH 子句可以查询表中的树形结构关系。其命令格式如下:
SELECT ….. CONNECT BY {PRIOR 列名1=列名2|列名1=PRIOR 列名2}
[START WITH];
其中:CONNECT BY子句说明每行资料将是按层次顺序检索,并规定将表中的资料连入树形结构的关系中。
0PRIORY运算符必须放置在连接关系的两列中 ...