1
                                         
        ID名 部長       
        101ムケシュSW               
        102 ラム SW 101       
        103 シャム SW 101       
        104 ラフル SW 101       
        105 ラジャット本社               
        106 アキレシュ HQ 105         
        107 サチン HQ 105       

このテーブルがあり、以下のような出力が必要です

                                  
        dep マネージャー名          
        SW ムケシュ・ラム       
                          シャム          
                          ラフル         
        HQ ラジャット アキレシュ          


                                    

4

3 に答える 3

1

必要に応じて、以下のクエリを見つけてください。置き換える必要があるテーブル名として MyTest を作成しました。

SELECT 
    Case WHEN ISNULL(SecondTable.Id,0) = 0
         THEN FirstTable.Dept
         ELSE ''
    END As Department, 

    Case WHEN ISNULL(SecondTable.Id,0) = 0
         THEN Manager.Name 
         ELSE ''
    END  As Manager, 
    FirstTable.Name FROM MyTest As FirstTable
LEFT JOIN MyTest As SecondTable ON
    SecondTable.ID = (SELECT Top 1  MyTest.ID
                      FROM MyTest 
                      WHERE MyTest.Manager = FirstTable.Manager
                        AND MyTest.dept = FirstTable.dept
                        AND MyTest.Id < FirstTable.Id
                      ORDER BY MyTest.ID Desc) 
LEFT JOIN MyTest As Manager On Manager.Id = FirstTable.Manager  WHERE FirstTable.Manager <> 0 ORDER BY FirstTable.dept, FirstTable.ID
于 2013-10-25T09:20:48.057 に答える