麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > 文庫 > 正文

交叉表查詢sql語句

2020-10-29 21:56:05
字體:
來源:轉載
供稿:網友
表一:   
  組名   
  成員1id   
  成員2id   
  成員3id   

  示例數據:   
  沖鋒組     1       2       3   
  后衛組     2       3       4   

  表二:   
  成員id   
  成員姓名   

  示例數據:   
  1     張三   
  2     李四   
  3     王五   
  4     陸二   

  要求結果     

  沖鋒組     張三       李四       王五   
  后衛組     李四       王五       陸二  
復制代碼 代碼如下:

--建立測試環境   
  Create   Table   表1(組名   varchar(10),成員1id   varchar(10),成員2id   varchar(10),成員3id   varchar(10))   
  --插入數據   
  insert   into   表1   
  select   '沖鋒組','1','2','3'   union   
  select   '后衛組','2','3','4'     
    Create   Table   表2(成員id   varchar(10),成員姓名   varchar(10))   
  --插入數據   
  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   

      
  --刪除測試環境   
  Drop   Table   表1   
  Drop   Table   表2   

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

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

復制代碼 代碼如下:

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.組名

復制代碼 代碼如下:

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.組名

復制代碼 代碼如下:

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   

復制代碼 代碼如下:

正解是   
  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
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久人人爽人人爽人人片av免费 | 国产成人精品日本亚洲语音 | 亚洲精品一二三区 | 日韩黄色免费在线观看 | 深夜视频在线 | 综合精品久久 | 双性精h调教灌尿打屁股的文案 | 久草视频在线看 | 香蕉成人在线视频 | 国产日韩大片 | 亚洲欧美在线视频免费 | 日本精品久久久一区二区三区 | 欧美wwwsss9999 | 日韩一级片一区二区三区 | www.91pron| 激情免费视频 | a集毛片 | 欧美三级日本三级少妇99 | 九草视频| 国产成人精品免费视频大全最热 | 毛片视频网站在线观看 | 精品成人在线 | 日本中文字幕久久 | 欧美成人精品不卡视频在线观看 | 看免费5xxaaa毛片 | 一级做a爱片性色毛片高清 国产精品色在线网站 | 亚洲一区二区在线免费 | 精品国产一级毛片 | 欧美日比视频 | 欧美激情性色生活片在线观看 | 国内性爱视频 | 亚洲福利在线免费观看 | 深夜福利视频免费观看 | 蜜桃传媒视频麻豆第一区免费观看 | 久久国产91| 视频一区二区三区免费观看 | 欧美成人免费在线视频 | 99精品视频一区二区三区 | 91网站免费观看 | 草草久久久 | 亚洲日本韩国在线观看 |