濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > sqlserver下將數(shù)據(jù)庫(kù)記錄的列記錄轉(zhuǎn)換成行記錄的方法

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

熱門標(biāo)簽:al智能電話機(jī)器人 沒聽見電話機(jī)器人幫你接 銀川高頻外呼回?fù)芟到y(tǒng)多少錢 如何做地圖標(biāo)注圖鋪 數(shù)字匠心電銷機(jī)器人 陜西電銷外呼系統(tǒng)好用嗎 蘭州語(yǔ)音外呼系統(tǒng)運(yùn)營(yíng)商 成都電話外呼系統(tǒng)一般多少錢 最新人工智能電銷機(jī)器人
假設(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é)、物理這三門課程。
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é)、物理這三門課程。

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)
您可能感興趣的文章:
  • SQL Server將一列的多行內(nèi)容拼接成一行的實(shí)現(xiàn)方法
  • SQLServer行轉(zhuǎn)列實(shí)現(xiàn)思路記錄
  • Sql Server 2000 行轉(zhuǎn)列的實(shí)現(xiàn)(橫排)
  • sqlserver2005 行列轉(zhuǎn)換實(shí)現(xiàn)方法
  • sqlserver 行列互轉(zhuǎn)實(shí)現(xiàn)小結(jié)
  • SQLServer行列互轉(zhuǎn)實(shí)現(xiàn)思路(聚合函數(shù))
  • SQL Server行轉(zhuǎn)列的方法解析
  • SQL Server基礎(chǔ)之行數(shù)據(jù)轉(zhuǎn)換為列數(shù)據(jù)

標(biāo)簽:遼源 宜春 本溪 巴彥淖爾 鹽城 通化 朔州 邢臺(tái)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《sqlserver下將數(shù)據(jù)庫(kù)記錄的列記錄轉(zhuǎn)換成行記錄的方法》,本文關(guān)鍵詞  sqlserver,下,將,數(shù)據(jù)庫(kù),記錄,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《sqlserver下將數(shù)據(jù)庫(kù)記錄的列記錄轉(zhuǎn)換成行記錄的方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于sqlserver下將數(shù)據(jù)庫(kù)記錄的列記錄轉(zhuǎn)換成行記錄的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    德州市| 石泉县| 永康市| 嫩江县| 晋城| 浑源县| 沿河| 杂多县| 珠海市| 巨野县| 扎鲁特旗| 四子王旗| 扎兰屯市| 玉树县| 新巴尔虎右旗| 霍城县| 鄂州市| 开原市| 电白县| 卢湾区| 沙洋县| 竹溪县| 屏山县| 大邑县| 恩平市| 金堂县| 舒城县| 广昌县| 济阳县| 池州市| 南汇区| 临洮县| 太和县| 岱山县| 德保县| 昌乐县| 治多县| 喀喇沁旗| 陇西县| 喀喇| 虎林市|