sqlserver:有关sql server下无限多级别分类查询解决办法来源: 发布时间:星期六, 2009年2月7日 浏览:28次 评论:0
="t18">在开发中经常会遇到无限级分类问题最常见是些无限级目录的类如果你对SQL Server还不是太熟悉或者还不太熟悉SQL语言话这将是件很困难事情也许你最后能实现类似功能不过可能花费时间很长效率也不是很理想下面举例也许能给你个启示
/***创建表****/ CREATE TABLE [dbo].[Tree] ( [ID] [] IDENTITY (1, 1) NOT NULL , [PID] [] NULL , [Name] [varchar] (10) COLLATE Chinese_PRC_CI_AS NULL ) _disibledevent=>) RETURNS @Tab TABLE(ID , PID , Name varchar(10), Lev )--返回结果表结构 AS BEGIN Declare @lev Set @lev=0 While @lev=0 or @@ROWCount>0 Begin Set @Lev=@Lev+1 Insert @Tab(ID, PID, Name, Lev) Select ID, PID, Name, @Lev From Tree Where (@Lev=1 and ((PID=@ID) or (@ID is null and PID is null))) or (PID in (Select ID From @Tab Where Lev=@Lev-1)) order by ID End RETURN END 直接查询Select * from dbo.fGetTreeTable(null)就可以输入所有记录 0
相关文章
读者评论发表评论 |
|