行列轉換(列轉行)

2021-05-23 02:09:15 字數 821 閱讀 9860

--行列轉換(列轉行)

create table tb

(姓名 nvarchar(20),

數學 int,

英語 int,

語文 int)go

insert into tb

select '李四',87,82,0

union

select '張三',93,78,98

goselect * from tb

godeclare @sql varchar(1000)

set @sql=''

select @sql=@sql+'select 姓名,'''+name+''' as 科目,'+name+' as 成績 from tb where '+name+'>0 union all '

from (select a.name from syscolumns a,sysobjects b

where a.id=b.id and b.name='tb' and a.name <> '姓名') a

set @sql=left(@sql,len(@sql)-10)

exec (@sql)

godrop table tb

go/*****************************

姓名 數學 英語 語文

李四 87 82 0

張三 93 78 98

姓名 科目 成績

李四 數學 87

張三 數學 93

李四 英語 82

張三 英語 78

張三 語文 98

*****************************/

90度旋轉行列轉換之一

地點 重慶航天職業學院 說明 無 資料庫中tb 如下 月份 工資 福利 獎金 1月 100 200 300 2月 110 210 310 3月 120 220 320 4月 130 230 330 我想得到的結果是 專案 1月 2月 3月 4月 工資 100 110 120 130 福利 200 2...

hive 列轉行 HQL 行轉列,列轉行

1 相關函式 concat string a col,string b col 返回輸入字串連線後的結果,支援任意個輸入字串 concat ws separator,str1,str2,它是乙個特殊形式的 concat 第乙個引數剩餘引數間的分隔符。分隔符可以是與剩餘引數一樣的字串。如果分隔符是 n...

python 列轉行 SQL 行轉列,列轉行

sql 行轉列,列轉行 行列轉換在做報表分析時還是經常會遇到的,今天就說一下如何實現行列轉換吧。行列轉換就是如下圖所示兩種展示形式的互相轉換 行轉列假如我們有下表 select from student pivot sum score for subject in 語文,數學,英語 通過上面 sql...