sql 簡單 行轉列

2021-06-07 05:26:24 字數 1678 閱讀 9204

use [dgxt]

go/****** object:  storedprocedure [dbo].[pro_reportdate]    script date: 06/19/2012 08:32:54 ******/

set ansi_nulls on

goset quoted_identifier on

goalter procedure [dbo].[pro_reportdate]

@betime datetime,

@aftime datetime

asbegin

set nocount on;

-------建立臨時表

select * into #reportasdate from

(select datepart(yy,ordertime) as yeard ,

datepart(mm,ordertime) as monthd,count(*) as ordernum,sum(summoney) as zjmoney

from en_orders a,dbo.en_orderstatus b

where a.osid=b.osid

and datediff(month,ordertime,@betime)<=0 and

datediff(month,ordertime,@aftime)>=0

group by datepart(yy,ordertime),datepart(mm,ordertime))as b

-- insert statements for procedure here

select * from #reportasdate

--行轉列

/*  select

max(case monthd  when '1' then ordernum else 0 end) 一月,

max(case monthd when '2' then ordernum else 0 end) 二月,

max(case monthd when '3' then ordernum else 0 end) 三月,

max(case monthd when '4' then ordernum else 0 end) 四月,

max(case monthd when '5' then ordernum else 0 end) 五月,

max(case monthd when '6' then ordernum else 0 end) 六月,

max(case monthd when '7' then ordernum else 0 end) 七月,

max(case monthd when '8' then ordernum else 0 end) 八月,

max(case monthd when '9' then ordernum else 0 end) 九月,

max(case monthd when '10' then ordernum else 0 end) 十月,

max(case monthd when '11' then ordernum else 0 end) 十一月,

max(case monthd when '12' then ordernum else 0 end) 十二月

from #reportasdate

group by yeard*/

end

SQL 單行函式

日期型 字元型 to char 日期型字段,格式串 格式串,指出轉換後日期資料的表現形式 01 2月 82 82 2月 01 格式串 rr mon dd 數值型 字元型 to char 數值型,格式串 格式串,指出轉換後數值資料的表現形式 字元型 數值型 to number 字元型,格式串 格式串,...

sql 單行函式

函式 說明ascii 返回對應字元的十進位制值 chr給出十進位制返回字元 concat 拼接兩個字串,與 相同 initca p將字串的第乙個字母變為大寫 instr 找出某個字串的位置 instrb 找出某個字串的位置和位元組數 length 以字元給出字串的長度 lengthb 以位元組給出字...

sql單行函式

三個字元操作函式 lower upper initcap 分別是將字串全轉換成小寫 全轉換成大寫 以及將字串中除了單個單詞以外大寫其餘小寫的功能。select lower xijian uper xijian initcap xi jian from dual 具體使用可以在where中運用 sel...