在sqlserver2005下,遞迴查詢可以通過公共表示式(cte)來實現。
如下所示:
withcolumntree(projectid,parentid,columnid,columnname,columnurl,ifdel,tag,clevel)as(
select
projectid,
parentid,
columnid,
columnname,
columnurl,
ifdel,
columnid as tag,
0 as clevel
from
columncms
where
columnid=14
union
all
select
p.projectid,
p.parentid,
p.columnid,
p.columnname,
p.columnurl,
p.ifdel,
ch.tag,
ch.clevel+1
from
columncms p
inner join
columntree ch
on ch.parentid=p.columnid
select
columnid
from
columntree c
where
c.ifdel=0
order by
c.clevel desc
上面**中,綠色的部分定義了遞迴的「根」,而橘黃色部分則執行的是遞迴查詢。在遞迴公共表示式查詢時,必須使用union all。定義好cte後,就可以使用在cte中定義的列(深藍色部分)從cte中查詢。
SQL Server 2005下的分頁SQL
其實基本上有三種方法 1 使用sql server 2005中新增的row number 幾種寫法分別如下 1select top 20 from select 2 row number over order by namec as rownumber,3 4from 5 dbo.mem membe...
SQL Server 2005下的分頁SQL
1 使用sql server 2005中新增的row number 幾種寫法分別如下 code select top20 from select row number over order bynamec asrownumber,from dbo.mem member myresults where...
SQL Server2005複製實現
一 準備工作 1 在發布伺服器上建立乙個共享目錄,作為發布快照檔案的存放目錄。例如 在d 盤根目錄下建資料夾名為pub 2 設定sql 發布伺服器和訂閱伺服器均設定 步驟 開啟服務 控制面板 管理工具 服務 右擊sqlserver agent 屬性 登入 選擇 此帳戶 輸入或選擇第一步中建立的win...