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

求大神帮忙上,

2013-03-06 
求大神帮忙下,急急急。在线等sql 2008:在一张表中(类似菜单),根据一个或多个父节点查询出所有自节点(包括子

求大神帮忙下,急急急。在线等
sql 2008:
在一张表中(类似菜单),根据一个或多个父节点查询出所有自节点(包括子节点下的子节点)。

fid fnumber fname fparent
1 N001 name1 
2 N00101 name2 1
3 N002 name3 
4 N00201 name4 2
.
        .
        .
n-1     N0020201   name5 4 
n N00202 namen 2

如我需要查出
N001,N002下的所有数据,用一条sql语句??? 
[解决办法]


WITH tp AS (
SELECT a.* FROM TB WHERE fname IN ('N001','N002')
UNION ALL
SELECT * FROM TB a JOIN tp b ON a.fparent=b.id)
SELECT * FROM tp

[解决办法]
引用:
with as 可用在sql2008中使用吗,我新手。

可以
[解决办法]
2005以后就可以用CTE,也就是with
[解决办法]
引用:
SQL code?12345WITH tp AS (SELECT a.* FROM TB WHERE fname IN ('N001','N002')UNION ALLSELECT * FROM TB a JOIN tp b ON a.fparent=b.id)SELECT * FROM tp

懒一下,引用1楼得,UP
with在2008中可以用

热点排行