主頁 > 知識庫 > 交叉表查詢sql語句

交叉表查詢sql語句

熱門標(biāo)簽:漯河電銷回?fù)芡夂粝到y(tǒng) 美國地圖標(biāo)注軟件下載 長沙外呼系統(tǒng)平臺 怎么修改高德地圖標(biāo)注 西安電話自動外呼系統(tǒng) 硅基電話機(jī)器人官網(wǎng) 城市地圖標(biāo)志怎么標(biāo)注 電話機(jī)器人怎么看余額 合肥crm外呼系統(tǒng)加盟
表一:   
  組名   
  成員1id   
  成員2id   
  成員3id   

  示例數(shù)據(jù):   
  沖鋒組     1       2       3   
  后衛(wèi)組     2       3       4   

  表二:   
  成員id   
  成員姓名   

  示例數(shù)據(jù):   
  1     張三   
  2     李四   
  3     王五   
  4     陸二   

  要求結(jié)果     

  沖鋒組     張三       李四       王五   
  后衛(wèi)組     李四       王五       陸二  
復(fù)制代碼 代碼如下:

--建立測試環(huán)境   
  Create   Table   表1(組名   varchar(10),成員1id   varchar(10),成員2id   varchar(10),成員3id   varchar(10))   
  --插入數(shù)據(jù)   
  insert   into   表1   
  select   '沖鋒組','1','2','3'   union   
  select   '后衛(wèi)組','2','3','4'     
    Create   Table   表2(成員id   varchar(10),成員姓名   varchar(10))   
  --插入數(shù)據(jù)   
  insert   into   表2   
  select   '1','張三'   union   
  select   '2','李四'   union   
  select   '3','王五'   union   
  select   '4','陸二'     

  --測試語句   
    select   a.組名,   
  成員1=(select   成員姓名   from   表2   b   where   a.成員1id=b.成員id),   
  成員1=(select   成員姓名   from   表2   b   where   a.成員2id=b.成員id),   
  成員1=(select   成員姓名   from   表2   b   where   a.成員3id=b.成員id)   
  from   表1   a   

      
  --刪除測試環(huán)境   
  Drop   Table   表1   
  Drop   Table   表2   

  /*   
  組名                   成員1                 成員1                 成員1                   
  ----------   ----------   ----------   ----------     
  沖鋒組                 張三                   李四                   王五   
  后衛(wèi)組                 李四                   王五                   陸二   

  (所影響的行數(shù)為   2   行)   
  */

復(fù)制代碼 代碼如下:

select     
          a.組名,   
          成員1   =   max(case   b.成員id   =   a.成員1id   then   b.成員姓名   end),   
          成員2   =   max(case   b.成員id   =   a.成員2id   then   b.成員姓名   end),   
          成員3   =   max(case   b.成員id   =   a.成員3id   then   b.成員姓名   end),   
  from     
          表一   a,   
          表二   b   
  group   by   
          a.組名

復(fù)制代碼 代碼如下:

select     
          a.組名,   
          成員1   =   max(case   b.成員id   =   a.成員1id   then   b.成員姓名   end),   
          成員2   =   max(case   b.成員id   =   a.成員2id   then   b.成員姓名   end),   
          成員3   =   max(case   b.成員id   =   a.成員3id   then   b.成員姓名   end)   
  from     
          表一   a,   
          表二   b   
  group   by   
          a.組名

復(fù)制代碼 代碼如下:

select   a.組名,   
                成員1=(select   成員姓名   from   表2   b   where   a.成員1id=b.成員id),   
                成員1=(select   成員姓名   from   表2   b   where   a.成員2id=b.成員id),   
                成員1=(select   成員姓名   from   表2   b   where   a.成員3id=b.成員id)   
  from   表一   a   

復(fù)制代碼 代碼如下:

正解是   
  select   表1.組名,   
                (select   表1.成員姓名   from   表2   b   where   表1.成員1id=表2.成員id)   as   成員1id,   
                (select   表1.成員姓名   from   表2   b   where   表1.成員2id=表2.成員id)   as   成員2id,   
                (select   表1.成員姓名   from   表2   b   where   表1.成員3id=表2.成員id)   as   成員3id   
  from   表1,表2

標(biāo)簽:玉溪 撫順 廣西 文山 瀘州 吉林 商洛 濟(jì)源

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《交叉表查詢sql語句》,本文關(guān)鍵詞  交叉表,查詢,sql,語句,交叉表,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《交叉表查詢sql語句》相關(guān)的同類信息!
  • 本頁收集關(guān)于交叉表查詢sql語句的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章