如 SELECT 1 x FROM DUAL UNION ALL SELECT 0 x FROM DUAL (显示为2条记录 0 ,1)
SELECT /*REPLACE*/(SYS_CONNECT_BY_PATH(x,','))/*,',') s*/
FROM (SELECT 1 x FROM DUAL UNION ALL SELECT 0 x FROM DUAL)
WHERE LEVEL=2
CONNECT BY LEVEL<=2;
就是显示从root开始且为2层的各条遍历的情况;
两个根节点分别是: 0 1
0 1 0 1
那最后的结果就是 ,0,0;,0,1;,1,0;,1,1; (level 层元素的个数等于 跟节点元素个数×2^level )
构造level 位数的2进制数字:
SELECT REPLACE(SYS_CONNECT_BY_PATH(x,',') ,',') s
FROM (SELECT 1 x FROM DUAL UNION ALL SELECT 0 x FROM DUAL)
WHERE LEVEL=2
CONNECT BY LEVEL<=2;