1 像这样创建表
创建表 oracle_connet_by_test ( item_id NUMBER 主键, parent_id NUMBER, item_desc VARCHAR2(8)); 插入 oracle_connet_by_test 值(1、0、'AAA'); 插入 oracle_connet_by_test 值(2、0、'BBB'); 插入到 oracle_connet_by_test 值(3、1、'CCC'); 插入到 oracle_connet_by_test 值(4、2、'DDD'); 插入到 oracle_connet_by_test 值(5、1、'EEE'); 插入 oracle_connet_by_test 值(6、3、'FFF'); 插入 oracle_connet_by_test 值(7、3、'GGG'); 犯罪;
2 当我运行这个脚本时,输出将是
SQL> 选择级别, 2 ITEM_ID, 3 PARENT_ID, LPAD(' ', 4 * (LEVEL - 1)) || ITEM_DESC 作为 ITEM_DESC 4 来自 ORACLE_CONNET_BY_TEST 5 以 parent_Id = 0 开始 6 按之前的 ITEM_ID 连接 = PARENT_ID 7; LEVEL ITEM_ID PARENT_ID ITEM_DESC ---------- ---------- ---------- ------------ 1 1 0 AAA 2 3 1 CCC 3 6 3 FFF 3 7 3 2 5 1 电子电气设备 1 2 0 BBB 2 4 2 DDD
3 问题:如果我想要这个结果,我应该如何编写代码?
LEVEL ITEM_ID PARENT_ID ITEM_DESC SUPER_ID ---------- ---------- ---------- ---- ---- ------ 1 1 0 AAA 1 2 3 1 CCC 1 3 6 3 FFF 1 3 7 3 GGG 1 2 5 1 电子电气设备 1 1 2 0 血脑屏障 2 2 4 2 DDD 2