• 查询所有上级部门的SQL


    create table testdept(
    deptid int identity(1,1) primary key,
    deptname varchar(16),
    superdept int
    ); 
      
      
    insert into testdept(deptname,superdept) values('总经办',0);
    insert into testdept(deptname,superdept) values('财务部',1);
    insert into testdept(deptname,superdept) values('工程部',1);
    insert into testdept(deptname,superdept) values('会计部',2);
    insert into testdept(deptname,superdept) values('出纳部',2);
    insert into testdept(deptname,superdept) values('北京工程办',3);
    insert into testdept(deptname,superdept) values('南京工程办',3);

     
    希望查询出这样的结果:
    deptid deptname    superdept
    0       总经办      总经办
    1       工程部      总经办
    2       财务部      总经办
    3       会计部      财务部
    4       出纳部      财务部
    5       北京工程办  工程部
    6       南京工程办  工程部
     

    ============================================

    select a.deptid, a.deptname, isuperdept =isnull(b.deptname, a.deptname)

    from testdept a

    leftjoin testdept b

    on a.superdept = b.deptid

  • 相关阅读:
    理解协方差矩阵
    混合高斯模型(Gaussian mixture model, GMM)
    简单理解EM算法Expectation Maximization
    Sigmoid函数与Softmax函数的理解
    关于交叉熵损失函数Cross Entropy Loss
    进制转换 -- 牛客
    首字母大写--牛客
    最简真分数
    剩下的数 -- 牛客
    N的阶乘 -- 牛客
  • 原文地址:https://www.cnblogs.com/tangge/p/2233047.html
Copyright © 2020-2023  润新知