亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

sqlserver下將數(shù)據(jù)庫(kù)記錄的列記錄轉(zhuǎn)換成行記錄的方法

 更新時(shí)間:2011年07月11日 20:46:21   作者:  
sqlserver下將數(shù)據(jù)庫(kù)記錄的列記錄轉(zhuǎn)換成行記錄的方法分享,需要的朋友可以參考下。
假設(shè)有張學(xué)生成績(jī)表(tb)如下:
Name Subject Result
張三 語(yǔ)文  74
張三 數(shù)學(xué)  83
張三 物理  93
李四 語(yǔ)文  74
李四 數(shù)學(xué)  84
李四 物理  94
想變成

姓名 語(yǔ)文 數(shù)學(xué) 物理
---------- ----------- ----------- -----------
李四 74 84 94
張三 74 83 93
SQL 語(yǔ)句如下:
復(fù)制代碼 代碼如下:

create table tb
(
Name varchar(10) ,
Subject varchar(10) ,
Result int
)
insert into tb(Name , Subject , Result) values('張三' , '語(yǔ)文' , 74)
insert into tb(Name , Subject , Result) values('張三' , '數(shù)學(xué)' , 83)
insert into tb(Name , Subject , Result) values('張三' , '物理' , 93)
insert into tb(Name , Subject , Result) values('李四' , '語(yǔ)文' , 74)
insert into tb(Name , Subject , Result) values('李四' , '數(shù)學(xué)' , 84)
insert into tb(Name , Subject , Result) values('李四' , '物理' , 94)
go

--靜態(tài)SQL,指subject只有語(yǔ)文、數(shù)學(xué)、物理這三門(mén)課程。
select name 姓名,
max(case Subject when '語(yǔ)文' then result else 0 end) 語(yǔ)文,
max(case Subject when '數(shù)學(xué)' then result else 0 end) 數(shù)學(xué),
max(case Subject when '物理' then result else 0 end) 物理
from tb
group by name

--動(dòng)態(tài)SQL,指subject不止語(yǔ)文、數(shù)學(xué)、物理這三門(mén)課程。

declare @sql varchar(8000)
set @sql = 'select Name as ' + '姓名'
select @sql = @sql + ' , max(case Subject when ''' + Subject + ''' then Result else 0 end) [' + Subject + ']'
from (select distinct Subject from tb) as a
set @sql = @sql + ' from tb group by name'
exec(@sql)

相關(guān)文章

  • sqlserver合并DataTable并排除重復(fù)數(shù)據(jù)的通用方法分享

    sqlserver合并DataTable并排除重復(fù)數(shù)據(jù)的通用方法分享

    網(wǎng)上合并DataTable通用方法的文章很多,結(jié)合項(xiàng)目開(kāi)發(fā)中的常用需求,并借鑒網(wǎng)上的做法,寫(xiě)了一個(gè)合并DataTable的通用方法,主要功能是合并兩個(gè)DataTable(結(jié)構(gòu)可以不同,如字段不完全一致),并可以根據(jù)某一列值進(jìn)行排重處理
    2011-12-12
  • 新手SqlServer數(shù)據(jù)庫(kù)dba需要注意的一些小細(xì)節(jié)

    新手SqlServer數(shù)據(jù)庫(kù)dba需要注意的一些小細(xì)節(jié)

    這篇文章主要介紹了新手SqlServer數(shù)據(jù)庫(kù)dba需要注意的一些小細(xì)節(jié),本文講解了15個(gè)小細(xì)節(jié)、小技巧及需要注意的地方,需要的朋友可以參考下
    2015-02-02
  • 一個(gè)有趣的SQL命題 用一條語(yǔ)句切換BIT型的真假值

    一個(gè)有趣的SQL命題 用一條語(yǔ)句切換BIT型的真假值

    有個(gè)需求,用一條SQL語(yǔ)句(SQL SERVER)的,切換某個(gè)BIT字段值。也就是說(shuō)從TRUE變FALSE,從FALSE到TRUE。
    2009-08-08
  • SQL?Server還原完整備份和差異備份的操作過(guò)程

    SQL?Server還原完整備份和差異備份的操作過(guò)程

    這篇文章主要介紹了SQL?Server?還原?完整備份和差異備份的詳細(xì)操作,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-09-09
  • SQL實(shí)現(xiàn)模糊查詢的四種方法總結(jié)

    SQL實(shí)現(xiàn)模糊查詢的四種方法總結(jié)

    本文主要介紹了SQL實(shí)現(xiàn)模糊查詢的四種方法總結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • SQLserver刪除某數(shù)據(jù)庫(kù)中所有表實(shí)現(xiàn)思路

    SQLserver刪除某數(shù)據(jù)庫(kù)中所有表實(shí)現(xiàn)思路

    方便刪除數(shù)據(jù)庫(kù)中所有的數(shù)據(jù)表,清空數(shù)據(jù)庫(kù),有些有約束,不能直接delete,因?yàn)槟菢犹kU(xiǎn)了所以需要先刪除庫(kù)中的約束,接下來(lái)提供詳細(xì)實(shí)現(xiàn)代碼,感興趣的你可以參考下哦,或許對(duì)你學(xué)習(xí)有所幫助
    2013-02-02
  • MSSQL MySQL 數(shù)據(jù)庫(kù)分頁(yè)(存儲(chǔ)過(guò)程)

    MSSQL MySQL 數(shù)據(jù)庫(kù)分頁(yè)(存儲(chǔ)過(guò)程)

    有關(guān)分頁(yè) SQL 的資料很多,有的使用存儲(chǔ)過(guò)程,有的使用游標(biāo)。本人不喜歡使用游標(biāo),我覺(jué)得它耗資、效率低;使用存儲(chǔ)過(guò)程是個(gè)不錯(cuò)的選擇,因?yàn)榇鎯?chǔ)過(guò)程是經(jīng)過(guò)預(yù)編譯的,執(zhí)行效率高,也更靈活
    2012-01-01
  • SQL?Server中的游標(biāo)介紹

    SQL?Server中的游標(biāo)介紹

    這篇文章介紹了SQL?Server中的游標(biāo),文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • SQL 中 NULL值測(cè)試代碼

    SQL 中 NULL值測(cè)試代碼

    在SQL語(yǔ)句中,where 子句:where t.modifier = null ,這里不可以使用NULL關(guān)鍵字,因?yàn)樗皇且粋€(gè)真正的值,它僅僅是一個(gè)符號(hào),因?yàn)樗闹凳俏粗摹?/div> 2011-04-04
  • MSsql每天自動(dòng)備份數(shù)據(jù)庫(kù)并每天自動(dòng)清除log的腳本

    MSsql每天自動(dòng)備份數(shù)據(jù)庫(kù)并每天自動(dòng)清除log的腳本

    有自己服務(wù)器的朋友需要用到的東西,因?yàn)閙ssql數(shù)據(jù)需要經(jīng)常備份
    2008-09-09

最新評(píng)論