MS SQL Server樹型結構資料顯示的SQL語句(純SQL語句,不用函數)

來源:互聯網
上載者:User

SELECT  dpcode1+dpcode2+dpcode3 as 部門代碼,dpname1+dpname2+dpname3 as 部門名稱 FROM T_Dpt where dpname1 is not null and dpname2 is not null and dpname3 is not null union all SELECT dpcode1+dpcode2+dpcode3 as 部門代碼,dpname1+dpname2 as 部門名稱 FROM T_Dpt where dpname1 is not null and dpname2 is not null and dpname3 is  null UNION ALL SELECT  dpcode1+dpcode2+dpcode3 as 部門代碼,dpname1 as 部門名稱 FROM T_Dpt where dpname1 is not null and dpname2 is  null and dpname3 is  null;

運行結果:

部門代碼                      部門名稱

01                                  外語系 

0102                              外語系日語專業                          

0102001                       外語系日語專業0331班   

0103                              外語系商務英語

0103001                       外語系商務英語0341班

0104                              外語系教工

0103002                       外語系商務英語0242班

附:

用到的基本表

CREATE TABLE [dbo].[T_Dpt] (
 [DpCode1] [char] (2) COLLATE Chinese_PRC_CI_AS NOT NULL ,
 [DpCode2] [char] (2) COLLATE Chinese_PRC_CI_AS NULL ,
 [DpCode3] [char] (3) COLLATE Chinese_PRC_CI_AS NULL ,
 [DpName1] [varchar] (30) COLLATE Chinese_PRC_CI_AS NULL ,
 [DpName2] [varchar] (30) COLLATE Chinese_PRC_CI_AS NULL ,
 [DpName3] [varchar] (30) COLLATE Chinese_PRC_CI_AS NULL , 
) ON [PRIMARY]

樣本資料:

DpCode1 DpCode2 DpCode3 DpName1 DpName2 DpName3
01 外語系 null null
01 02 外語系 日語專業 null
01 02 001 外語系 日語專業 0331班
01 03 外語系 商務英語 null
01 03 001 外語系 商務英語 0341班
01 04 外語系 教工 null
01 03 002 外語系 商務英語 0242班
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.