易截截图软件、单文件、免安装、纯绿色、仅160KB

这个SQL语句怎么写?

表Item:
ID_i  UpID_i  Item_ch  Order_i
1      null    质量      null
2      1        质量1    1
3      1        质量2    2
4      null    工期      null
5      4        工期1    1
6      4        工期2    2
7      4        工期3    3

表有层次结构,UpID_i标记的是上级ID(是ID_i中的一个值),我想在得到这样的结果:
UpItem_ch Item_ch Order_i
质量 质量1 1
质量 质量2 2
工期 工期1 1
工期 工期2 2
工期 工期3 3
请问SQL语句怎么写?


如果只有两层

SQL code:
SELECT B.Item_ch AS UpItem_ch,A.Item_ch,A.Order_i
from (SELECT * from Item WHERE UpID_i IS NOT NULL) A
JOIN (SELECT * from Item WHERE UpID_i NULL) B
ON A.UpID_i=B.ID_i


层次可能不止两层,最好能灵活一点

SQL code:
--> 测试数据:[Item]
if object_id('[Item]') is not null drop table [Item]
create table


相关问答:

jsp链接sql2000的疑问?



type Exception report


message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jas ......

sql性能求助 - MS-SQL Server / 疑难问题

场景如下:
客户把备份好的数据库,发给我,我在本机还原后,运行写好的存储过程,比较快,并且在实施那边运行同样比较快。但是当实施在客户那边运行的时候速度就非常的慢,时间超出了程序的时间限制。远程在客户那 ......

求一条SQL - MS-SQL Server / 疑难问题

--drop table #T1
--drop table #T2
create Table #T1(ID int,
QueryID nvarchar(20),
ResultID1 nvarchar(20),
ResultID2 nvarchar(20))
create Table #T2(SortNo int,
QueryID nvarchar(20),
ResultID1 nv ......

SQL clr - MS-SQL Server / 非技术版

想用SQL CLR做如下的存储过程,但是发现报错: 
{由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。} 
而且如果数据从case 1通过时就是正确的,从case 2通过时错误 
并且在c ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号