sqlite 树型结构查询

表结构:tblCity(ID, ParentID, Name)

因为sqlite 没有row_number函数,也不能递归查询,所幸它有RowID 这个字段。只好采用这种 笨方法


1)

 

select ID,Name,1 as Level from tblCity where ParentID=0

union all 

select a.ID,a.Name,c.RowID as Level from tblCity a 

inner join tblCity b on a.ParentID=b.ID

inner join 

(

      select ParentID from tblCity group by ParentID

) c on a.ParentID=c.ParentID


2)

 

 

select ID,Name,1 as Level from tblCity where ParentID=0

union all 

select a.ID,a.Name,c.RowID as Level from tblCity a 

inner join tblCity b on a.ParentID=b.ID

inner join 

(

      select ParentID from tblCity group by ParentID

) c on a.ParentID=c.ParentID


 

 

你可能感兴趣的:(sqlite)