日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > Sqlserver > 一個根據列的范圍分組匯總的Sql存儲過程

一個根據列的范圍分組匯總的Sql存儲過程

來源:程序員人生   發布時間:2014-04-12 08:24:31 閱讀次數:2869次
1.需求說明

有如下表數據:

ID NUM
----------- -----------
1 2
2 3
3 2
4 2
5 12
6 2
7 1
8 5
9 1
10 1
11 1

輸入分組參數,比如輸入 "2,5,8,10" ,實現按 ID<=2,2<ID<=5,5<ID<=8,8<ID<=10,ID>10 分組查詢,要得到下面的數據:

groupdata num
---------- -----------
id<=2 5
2<id<=5 16
5<id<=8 8
8<id<=10 2
id>10 1

2.存儲過程如下:

--測試數據

create table TestData(ID int,NUM int)

insert TestData select 1,2

union all select 2,3

union all select 3,2

union all select 4,2

union all select 5,12

union all select 6,2

union all select 7,1

union all select 8,5

union all select 9,1

union all select 10,1

union all select 11,1

go



create proc spgroupcol

@numlist varchar(1000)

as

set nocount on

declare @t table(id int identity,groupdata varchar(10),a int,b int)

declare @i int,@pnum varchar(10),@j int

select @i=charindex(',',@numlist)

,@pnum=left(@numlist,@i-1)

insert @t select 'id<='+@pnum,null,@pnum



while @i>=1

begin

select @numlist=substring(@numlist,@i+1,len(@numlist)-@i)

select @j=charindex(',',@numlist) ;

if @i=@j

begin

insert @t select @pnum+'<id<='+substring(@numlist,0,@i),@pnum,substring(@numlist,0,@i)

select @pnum=left(@numlist,@i-1);

end

else

begin

insert @t select @pnum+'<id<='+substring(@numlist,0,@i+1),@pnum,substring(@numlist,0,@i+1)

select @pnum=left(@numlist,@i);

end

select @i=charindex(',',@numlist) ;

end



insert @t select 'id>'+@numlist,@numlist,null

select b.groupdata,num=sum(a.num)

from TestData a,@t b

where case

when b.a is null then case when a.id<=b.b then 1 else 0 end

when b.b is null then case when a.id>b.a then 1 else 0 end

else case when a.id>b.a and a.id<=b.b then 1 else 0 end

end=1

group by b.groupdata

order by min(b.id)

go



spgroupcol '2,5,8,10'

drop table TestData

sql存儲過程的單步調試要在Vs2008中,服務器管理器中連接上數據庫,找到存儲過程右鍵單步調試。

轉自:http://www.cnblogs.com/carysun/
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 日韩国产a | 久国久产久精永久网页 | 久久精品欧美一区二区 | 午夜日韩 | 亚洲国产精品一区二区第一页 | 中文字幕色站 | 欧美精品免费在线 | 黄色毛片一级片 | 日本久久免费 | 久久视频一区 | 二区三区在线 | 欧美中文字幕在线播放 | 一级片久久久久久 | 国产成人综合自拍 | 蜜桃一区| 在线影视 | 日韩色 | 国产黄色av电影 | 成人在线视频网站 | 一级aaa级毛片午夜在线播放 | 日韩免费在线电影 | 国产资源福利 | 久久精品屋 | 97成人在线 | 麻豆一二区| 午夜精品久久久久久久久久久 | 中文字幕一区二区三区四区不卡 | 日韩激情视频 | 亚洲男人av | 欧美一区二区三区免费看 | 日韩在线 | 中文字幕不卡在线观看 | 国产成人深夜视频51 | 久久久久国产精品免费免费搜索 | 成人在线黄色电影 | 91蜜桃婷婷狠狠久久综合9色 | 色综合天天天天做夜夜夜夜做 | 亚洲一区二区久久久 | 99热在线播放| 久久久午夜精品 | 岛国片在线免费观看 |