zoukankan      html  css  js  c++  java
  • MS SQL Server树型结构数据显示的SQL语句(纯SQL语句,不用函数)

    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班

  • 相关阅读:
    [LeetCode] Insertion Sort List
    [LeetCode] Sort List
    [国嵌攻略][162][USB协议分析]
    [国嵌攻略][161][USB总线介绍]
    [国嵌攻略][160][SPI驱动程序设计]
    [国嵌攻略][159][SPI子系统]
    [国嵌攻略][158][SPI裸机驱动设计]
    [国嵌攻略][157][SPI总线介绍]
    [国嵌攻略][156][I2C自编设备驱动设计]
    ueditor 单独图片上传 转载
  • 原文地址:https://www.cnblogs.com/cyz1980/p/285117.html
Copyright © 2011-2022 走看看