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班

  • 相关阅读:
    Photoshop
    你会为了钱出售自己的个人资料吗?
    [ElasticSearch] 空间搜索 (一)
    hdu1584 A strange lift (电梯最短路径问题)
    Android API Guides---OpenGL ES
    Qt 推断一个IP地址是否有效
    bzoj1670【Usaco2006 Oct】Building the Moat 护城河的挖掘
    集成学习1-Boosting
    微信开发模式之自己定义菜单实现
    人件札记:开放式的办公室环境
  • 原文地址:https://www.cnblogs.com/cyz1980/p/285117.html
Copyright © 2011-2022 走看看