select * from

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名與空間、雅安服務(wù)器托管、營(yíng)銷軟件、網(wǎng)站建設(shè)、番禺網(wǎng)站維護(hù)、網(wǎng)站推廣。
(
select id as Name , Subject = 'id' , Result = id from tb1
union all
select id as Name , Subject = 'yytc' , Result = yytcfrom tb1
) t
order by name , case Subject when 'id' then 1 when 'yytc' then 2 end
沒(méi)有數(shù)據(jù)庫(kù),沒(méi)法給你測(cè)試,你用這個(gè)試試,看好不好使
如果不好使,可以訪問(wèn)這個(gè)地址:
里邊有行轉(zhuǎn)列,列轉(zhuǎn)行,應(yīng)該有你想要的,你看看
1,首先創(chuàng)建數(shù)據(jù)表
2,接著插入演示數(shù)據(jù)
3,需要把學(xué)生的每門(mén)成績(jī)集中到一行
4,編寫(xiě)PIVOT函數(shù)實(shí)現(xiàn)
5,運(yùn)行以后實(shí)現(xiàn)行轉(zhuǎn)列
6,最后還可以用case when來(lái)實(shí)現(xiàn)
PIVOT 用于將列值旋轉(zhuǎn)為列名(即行轉(zhuǎn)列),在 SQL Server 2000可以用聚合函數(shù)配合CASE語(yǔ)句實(shí)現(xiàn)
PIVOT 的一般語(yǔ)法是:PIVOT(聚合函數(shù)(列) FOR 列 in (…) )AS P
注意:PIVOT、UNPIVOT是SQL Server 2005 的語(yǔ)法,使用需修改數(shù)據(jù)庫(kù)兼容級(jí)別(在數(shù)據(jù)庫(kù)屬性-選項(xiàng)-兼容級(jí)別改為 90 )
SQL2008 中可以直接使用
完整語(yǔ)法:
table_source
PIVOT(
聚合函數(shù)(value_column)
FOR pivot_column
IN(column_list)
)
View Code
UNPIVOT 用于將列明轉(zhuǎn)為列值(即列轉(zhuǎn)行),在SQL Server 2000可以用UNION來(lái)實(shí)現(xiàn)
完整語(yǔ)法:
table_source
UNPIVOT(
value_column
FOR pivot_column
IN(column_list)
)
row_number() over(partition by id order by y) 這是個(gè)分析函數(shù),意思是以id分組,y排序,給每一行一個(gè)從1開(kāi)始的行號(hào),一般去重的時(shí)候用的比較多
編寫(xiě)一個(gè)函數(shù)
create func sum_value(@kid int)
returns varchar(1000)
as
begin
declare @s varchar(1000)
set @s= ' '
select @s+=value+‘,’ from tb where kid=@kid
return @s
end
然后調(diào)用
select Kid,sum_value(Kid) from tb group by Kid
當(dāng)前題目:行轉(zhuǎn)列sqlserver,wps行轉(zhuǎn)列
分享地址:http://chinadenli.net/article49/dsgsdeh.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、微信公眾號(hào)、標(biāo)簽優(yōu)化、用戶體驗(yàn)、網(wǎng)站改版、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)