首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

初学者求省市区简单 SQL

2013-01-28 
菜鸟求省市区简单 SQL一个省市区表 三个字段如下id 区域idname 名称parentid 父id比如idnameparentidisY1

菜鸟求省市区简单 SQL
一个省市区表 三个字段如下
id 区域id
name 名称
parentid 父id
比如
id  name      parentid    isY
1   辽宁省     0          null    
2   大连市     1          null
3   甘井子区   2           1
4   鞍山省     1          null
5   铁西区     4           0
6   铁东区     5            1
……
现在想把isY 的省市区查询出来 (注:只有区isY有值)
结果格式
省, 市, 区, 区的id, isY
请问各位大侠怎么实现? sql
[解决办法]
你确定只有省市区3级啊:

;with cte_tmp as (
select 1 as id, 'LN' as name, 0 as parentid, cast(null as bit) as isY
union all
select 2,'DL',1,null
union all
select 3,'GJZ',2,1
union all
select 4,'AS',1,null
union all
select 5,'TX',4,0
union all
select 6,'TD',5,1
)
select c.name,b.name,a.name,a.id
from cte_tmp a 
left join cte_tmp b
on a.parentid = b.id
left join cte_tmp c
on b.parentid = c.id
where a.isY = 1

热点排行