欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺析SQL語(yǔ)句行列轉(zhuǎn)換的兩種方法 case...when與pivot函數(shù)的應(yīng)用

 更新時(shí)間:2013年08月15日 09:59:05   作者:  
SQL語(yǔ)句行列轉(zhuǎn)換的兩種方法 case...when和pivot函數(shù)應(yīng)用,運(yùn)用pivot 函數(shù)只支持?jǐn)?shù)據(jù)庫(kù)版本2005以上的。一般運(yùn)用case when else end 的方法比較多,比較普遍

/*創(chuàng)建數(shù)據(jù)庫(kù)*/
 CREATE DATABASE tmp
 go
 USE tmp
 go

/*創(chuàng)建數(shù)據(jù)庫(kù)測(cè)試表*/
CREATE TABLE [Scores]
     (
       [ID] INT IDENTITY(1, 1)
                PRIMARY KEY ,
       [Student] VARCHAR(20) ,
       [Subject] VARCHAR(30) ,
       [Score] FLOAT
     )

go

TRUNCATE TABLE Scores
 /*插入數(shù)據(jù)庫(kù)測(cè)試數(shù)據(jù)信息*/
  INSERT  INTO Scores
         ( Student, Subject, Score )
 VALUES  ( 'test001', '語(yǔ)文', '90' )
 INSERT  INTO Scores
         ( Student, Subject, Score )
 VALUES  ( 'test001', '英語(yǔ)', '85' )
 INSERT  INTO Scores
         ( Student, Subject, Score )
 VALUES  ( 'text002', '語(yǔ)文', '90' )
 INSERT  INTO Scores
         ( Student, Subject, Score )
 VALUES  ( 'text002', '英語(yǔ)', '80' )
 INSERT  INTO Scores
         ( Student, Subject, Score )
 VALUES  ( 'test003', '語(yǔ)文', '95' )
 INSERT  INTO Scores
         ( Student, Subject, Score )
 VALUES  ( 'test003', '英語(yǔ)', '85' )

/*1.  case when .......then else  ....end 用法,行列轉(zhuǎn)換*/
 SELECT  Student AS '姓名' ,
         MAX(CASE Subject
               WHEN '語(yǔ)文' THEN Score
               ELSE 0
             END) AS '語(yǔ)文' ,--如果這個(gè)行是“語(yǔ)文”,就選此行作為列
        MAX(CASE Subject
               WHEN '英語(yǔ)' THEN Score
               ELSE 0
             END) AS '英語(yǔ)'
FROM    Scores
 GROUP BY Student
 ORDER BY Student

/*2. pivot(聚合函數(shù)(要轉(zhuǎn)成列值的列名)
       for 要轉(zhuǎn)換的列
       in(目標(biāo)列名)
   )*/

SELECT  Student AS '姓名' ,
         AVG(語(yǔ)文) AS '語(yǔ)文' ,
         AVG(英語(yǔ)) AS '英語(yǔ)'
FROM    Scores PIVOT( AVG(Score) FOR Subject IN ( 語(yǔ)文, 英語(yǔ) ) )as NewScores
 GROUP BY Student
 ORDER BY Student ASC

相關(guān)文章

  • MySQL計(jì)劃任務(wù)(事件調(diào)度器) Event Scheduler介紹

    MySQL計(jì)劃任務(wù)(事件調(diào)度器) Event Scheduler介紹

    MySQL5.1.x版本中引入了一項(xiàng)新特性EVENT,顧名思義就是事件、定時(shí)任務(wù)機(jī)制,在指定的時(shí)間單元內(nèi)執(zhí)行特定的任務(wù),因此今后一些對(duì)數(shù)據(jù)定時(shí)性操作不再依賴外部程序,而直接使用數(shù)據(jù)庫(kù)本身提供的功能
    2013-10-10
  • Centos下Mysql安裝圖文教程

    Centos下Mysql安裝圖文教程

    這篇文章主要為大家詳細(xì)介紹了 Centos下Mysql安裝圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • MySQL COUNT(*)性能原理詳解

    MySQL COUNT(*)性能原理詳解

    這篇文章主要介紹了MySQL COUNT(*)性能原理詳解,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • win32 mysql 5.7.27 安裝配置方法圖文教程

    win32 mysql 5.7.27 安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了win32 mysql 5.7.27 安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • mysql 發(fā)生系統(tǒng)錯(cuò)誤1067的解決方法

    mysql 發(fā)生系統(tǒng)錯(cuò)誤1067的解決方法

    今天要把WEB項(xiàng)目打包成EXE,可是在數(shù)據(jù)庫(kù)上卡住了。在啟動(dòng)數(shù)據(jù)庫(kù)服務(wù)的時(shí)候發(fā)生系統(tǒng)錯(cuò)誤 1067。
    2009-09-09
  • 一文教你快速生成MySQL數(shù)據(jù)庫(kù)關(guān)系圖

    一文教你快速生成MySQL數(shù)據(jù)庫(kù)關(guān)系圖

    我們經(jīng)常會(huì)用到一些表的數(shù)據(jù)庫(kù)關(guān)系圖,下面這篇文章主要給大家介紹了關(guān)于生成MySQL數(shù)據(jù)庫(kù)關(guān)系圖的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • MySQL降權(quán)運(yùn)行之MySQL以Guests帳戶啟動(dòng)設(shè)置方法

    MySQL降權(quán)運(yùn)行之MySQL以Guests帳戶啟動(dòng)設(shè)置方法

    我們?cè)趙indows服務(wù)器中使用mysql數(shù)據(jù)的時(shí)候,mysql默認(rèn)都是以system權(quán)限運(yùn)行,如果出現(xiàn)了安全問(wèn)題,黑客就可以通過(guò)mysql提權(quán)新建用戶什么的,所以mysql低權(quán)限運(yùn)行非常必要
    2014-07-07
  • MYSQL配置參數(shù)優(yōu)化詳解

    MYSQL配置參數(shù)優(yōu)化詳解

    MySQL是優(yōu)化難度最大的一個(gè)部分,不但需要理解一些MySQL專業(yè)知識(shí),同時(shí)還需要長(zhǎng)時(shí)間的觀察統(tǒng)計(jì)并且根據(jù)經(jīng)驗(yàn) 進(jìn)行判斷,然后設(shè)置合理的參數(shù)。下面我們了解一下MySQL優(yōu)化的一些基礎(chǔ)
    2018-07-07
  • MySQL排序與分頁(yè)講解

    MySQL排序與分頁(yè)講解

    這篇文章主要介紹了MySQL排序與分頁(yè)講解,使用 ORDER BY 對(duì)查詢到的數(shù)據(jù)進(jìn)行排序操作,按照dept_id的降序排列,salary的升序排列相關(guān)展開(kāi)文章,需要的小伙伴可以參考一下
    2022-01-01
  • MySQL數(shù)據(jù)庫(kù)優(yōu)化詳解

    MySQL數(shù)據(jù)庫(kù)優(yōu)化詳解

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)優(yōu)化的方方面面,各種小技巧,需要的朋友可以參考下
    2014-08-08

最新評(píng)論