有一个表: shop_area 是一个省 市 县 3级区域表
area_id(区域id) area_name(区域名) superid(-1 代表第一级省, 跟area_id关联 市 或 县) is_leaf 是否有子问题: 怎么查出一个省下面所有关联的市 和 市下面关联的县 需要对应... 请求大侠们指点!!!
area_id(区域id) area_name(区域名) superid(-1 代表第一级省, 跟area_id关联 市 或 县) is_leaf 是否有子问题: 怎么查出一个省下面所有关联的市 和 市下面关联的县 需要对应... 请求大侠们指点!!!
1. shop_area 表里需要具有体现层次的表列(supper_id和area_id)。
2. 使用伪列LEVEL返回层次。
3.
select lpad(' ',3*(LEVEL-1))||area_name as area_name
from shop_area
start with superid =-1 (省级)
connect by superid = prior area_id
connect_by_isleaf is_leaf --叶子
from shop_area
start with superid=-1
connect by prior superid=area_id
connect_by_isleaf is_leaf --叶子
from shop_area
start with superid=-1
connect by prior superid=area_id
参考:http://www.2cto.com/database/201109/106448.html
connect_by_isleaf is_leaf --叶子
from shop_area
start with superid=-1
connect by prior superid=area_id