国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

T-SQL,動態聚合查詢

2024-07-21 02:05:43
字體:
來源:轉載
供稿:網友



if exists(select table_name from information_schema.tables      where table_name = 'accountmessage')   drop table accountmessagego

create table accountmessage(ffundcode varchar(6) not null,faccname varchar(20) not null,faccnum int not null);

if exists(select table_name from information_schema.tables      where table_name = 'accountbalance')   drop table accountbalancego

create table accountbalance(ffundcode varchar(6) not null,faccnum int not null,fdate datetime default (getdate()) not null,fbal numeric(10,2) not null);

insert into accountmessage values('000001','北京存款',1)insert into accountmessage values('000001','上海存款',2)insert into accountmessage values('000001','深圳存款',3)insert into accountmessage values('000002','北京存款',1)insert into accountmessage values('000002','上海存款',2)insert into accountmessage values('000002','天津存款',3)insert into accountmessage values('000003','上海存款',1)insert into accountmessage values('000003','福州存款',2)

insert into accountbalance(fdate, ffundcode, faccnum, fbal) values ('2004-07-28','000001',1,1000.00)insert into accountbalance(fdate, ffundcode, faccnum, fbal) values ('2004-07-28','000001',2,1000.00)insert into accountbalance(fdate, ffundcode, faccnum, fbal) values ('2004-07-28','000001',3,1120.00)insert into accountbalance(fdate, ffundcode, faccnum, fbal) values ('2004-07-28','000002',1,2000.00)insert into accountbalance(fdate, ffundcode, faccnum, fbal) values ('2004-07-28','000002',2,1000.00)insert into accountbalance(fdate, ffundcode, faccnum, fbal) values ('2004-07-28','000002',3,1000.00)insert into accountbalance(fdate, ffundcode, faccnum, fbal) values ('2004-07-28','000003',1,2000.00)insert into accountbalance(fdate, ffundcode, faccnum, fbal) values ('2004-07-28','000003',2,1000.00)go

兩種不同的方法

declare @s nvarchar(4000)set @s=''select @[email protected]+','+quotename(faccname) +'=isnull(sum(case a.faccname when '+quotename(faccname,'''') +' then b.fbal end),0)'from accountmessage group by faccnameexec('select 基金代碼=a.ffundcode'[email protected]+'from accountmessage a,accountbalance bwhere a.ffundcode=b.ffundcode and a.faccnum=b.faccnumgroup by a.ffundcode')go

select * into #t from(select a.*,b.fbal from accountmessage a join accountbalance b on a.ffundcode=b.ffundcode and a.faccnum=b.faccnum)tdeclare @sql varchar(8000) set @sql='select ffundcode' select @sql= @sql+ ',sum(case when faccname = ''' + tt + ''' then fbal else 0 end) [' +tt+ ']' from (select distinct faccname as tt from #t) a set @[email protected]+' from #t group by ffundcode' exec (@sql)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 静宁县| 灵山县| 吕梁市| 浦北县| 珠海市| 安泽县| 汕尾市| 大埔区| 普兰店市| 剑河县| 辉县市| 乐清市| 隆尧县| 海丰县| 繁昌县| 商河县| 乌兰察布市| 天镇县| 新野县| 邵东县| 日土县| 南木林县| 新沂市| 兴海县| 蒲江县| 南丰县| 牙克石市| 逊克县| 吉隆县| 临漳县| 北海市| 临桂县| 荥阳市| 本溪市| 绿春县| 旺苍县| 驻马店市| 营山县| 沙坪坝区| 建瓯市| 长汀县|