1. 程式人生 > >sql遞迴顯示層級資料

sql遞迴顯示層級資料

;with catChild as(select *,cast(right('00000'+cast(Sort as varchar),5) as varchar(max)) as ssort 
from Category where ID = '123'
    union all select t.*,
    cast(ssort+right('00000'+cast(t.Sort as varchar),5) as varchar(max))
     from catChild, Category  t
    where catChild.ID = t.ParentID)
select *
from catChild where IsVolumes='1' order by ssort,Sort ;with cte as (select ID,Name,ParentID,1 level, cast(right('00000'+cast(Sort as varchar),5) as varchar(max)) as ssort from Category where ID = '111A' union all select t.ID,t.Name,t.ParentID,c.level + 1, cast(ssort+right
('00000'+cast(t.Sort as varchar),5) as varchar(max)) from Category t join cte c on t.ParentID = c.ID) select ID, Name, ParentID, level,ssort from cte order by ssort

相關推薦

sql顯示層級資料

;with catChild as(select *,cast(right('00000'+cast(Sort as varchar),5) as varchar(max)) as ssort from Category where ID = '123' union all select t

java 顯示某個資料夾下所有的檔名稱

import java.io.File; public class generateMappingClass { public static void main(String[] args) throws Exception { File file = new File

SQL Server 利用WITH AS獲取層級關係資料

WITH AS短語,也叫做子查詢部分(subquery factoring),在SQL Server 2005中提供了一種解決方案,這就是公用表表達式(CTE),使用CTE,可以使SQL語句的可維護性,同時,CTE要比表變數的效率高得多。     下面是CTE的語法:

如何利用SQL Server With As獲取層級關係資料

如果已知當前使用者ID我要想知道他的上級領導有哪些,可編寫sql語句如下: WITH Emp AS ( SELECT ID , EName ,

一條SQL語句查詢無限樹所有資料

 許可權樹:SELECT PERMISSIONID, PARENTID, T.ITEMNAME,T.DESCRIPTION FROM T_PERMISSION T START WITH PARENTID = (SELECT PARENTID F

怎樣用SQL求各個Folder的檔案數

-- 資料準備 CREATE TABLE [dbo].[ContentObject] (Id NCHAR(10), Name NVARCHAR(500),ParentId NCHAR(10),Type NVARCHAR(50)); INSERT INTO [dbo].[ContentObject]

Java刪除空資料

import java.io.File; public class ClearFile { static int iFile = 0; public static void main(String[] args) { // TODO Auto-generated method s

sql查詢子類

平時工作中我們會遇到主從層次關係的結構資料,我們需要把資料取出來並且提現出層級就像樹形結構一樣,比如這樣的結構: 資料庫表結構如下,有個parent_id和sub_id,就是把兩者的關係儲存起來。 id為768的下面有769,770,771,772,780,781資料,同時

File-用刪除某資料夾(資料夾下可能有檔案或資料夾)

利用遞迴演算法刪除某資料夾(包括其所有的子檔案及資料夾) import java.io.File; public class Dem01 { public static void main(String[] args) { File file = new F

Java刪除指定資料夾下所有檔案

Java遞迴刪除指定資料夾下所有檔案 工具類封裝 public class FileUtils{ public static boolean delAllFile(String path) { return delAllFile(new File(path)

python解壓資料夾中所有壓縮包

1. 簡述     遞迴解壓資料夾中的所有壓縮包到指定資料夾 2. 環境配置     python解壓rar檔案需要安裝依賴庫 (python-unrar)     Windows: 在 RARLab 官

遍歷資料夾下所有檔案

遞迴遍歷資料夾下所有檔案 程式碼塊 遞迴遍歷資料夾下所有檔案 package com.chow; import java.io.File; import java.util.ArrayList; /** * Created by zhouhaiming on 20

java使用,複製資料夾下的所有子檔案

1.先判斷要複製的檔案是資料夾還是檔案,如果是檔案,就進行復制,如果是資料夾,就進行下一層的迴圈,運用遞迴的特性,將所有的檔案進行復制。 2.存在問題,相對來說,使用字元流來進行復制有缺陷,在複製的過程中,對於複製的圖片啊,ppt什麼的檔案會有損害,可能不能開

perl 呼叫rm -rf 刪除指定資料夾,提示 can not remove: not empty 原因

my $dir = "/root/syn/Design/test.txt"; open $fh_dir, "> $dir " or die"$!"; chdir "/root/syn/" or die "$!"; system "rm -rf Design"; 控制代碼鎖定

java 設定層級 分級數

//多級角色遞迴查詢方法 public List<ProductCategory> iterateRoles(List<ProductCategory> menuVoList,String pid,Long level){

python遍歷資料夾裡面的所有檔案

import os path = "F:/new" #資料夾目錄 datas = [] def eachFile(filepath): fileNames = os.listdir(filepath) # 獲取當前路徑下的檔名,返回List for file

最終的價格(兩個不同的價格欄位對比,按邏輯得到資料)------集合迴圈

1.先再下面寫一個集合迴圈遞迴方法,然後呼叫。 public class Part { private String nplatPrice; private String estiPrice; //get..和set.. ...

取JSON資料

示例一: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

java ,列印資料夾下所有的檔案

import java.io.File; public class FileDemo2 { public static void main(String[] args) { // File file=new File("d:\\test"); File file=new File("D:\

C語言(遍歷資料夾)實現檔案批量複製

大專案時時常需要抽出屬於自己編寫的那部分程式碼,從SVN下載後,往往需要一個個的進入資料夾下拿取相應的檔案。這樣很浪費時間,雖然使用bat編寫確實更快,但是我覺得使用C語言可能在檔案過多時會快一點,也是為了 練習練習。如果那裡存在問題,或是不足,歡迎指出。程式碼如下: #includ