删除父节点同时删除该节点下的所有子节点(oracle)
表结构:
表名:node
字段:node_id up_node
数据:
1 0
2 1
3 1
4 2
表结构:
表名:node
字段:node_id up_node
数据:
1 0
2 1
3 1
4 2
5 2
要求:删除该表中的某个节点时,删除该节点下的所有子节点.如删除node_id = 2的节点,需同时删除node_id=4,node_id=5的节点.
delete from node where node_id in(
select node_id from node
start with node_id =2
connect by prior node_id=up_node );