使用表变量

作者在‘一棵秋天的树’帮助下,使用SQL表变量完成税收统计。通过声明表变量并插入数据,结合内连接和条件筛选,分别计算不同税率的税收总数,还统计了今天及从2005 - 08 - 24到现在的税收总数,体现了SQL使用的高效性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天写个统计,原本对表变量只是耳闻,大体知道点意思,今天查联机帮助后觉得比较有用,就在今天实用一下,在"一棵秋天的树"大哥的帮助下,顺里写出来,感觉sql的使用,会了,真的就很简单,而且高效.下面是偶写的个统计:

--2005-10-19 21:20:25
--desigined by whbo
--designed at 2005-10-19
set nocount on  --节约反馈资源
declare @intTax1 bigint,@intTax2 bigint,@intTax bigint
Declare @TSourceName table(SourceName varchar(32))         --使用表变量
insert into @TSourceName values('10062')
insert into @TSourceName values('10071')
insert into @TSourceName values('10080')
insert into @TSourceName values('10067')
insert into @TSourceName values('10073')
select @intTax1=sum(convert(bigint,wantedamount*0.03)) from moneylog a inner join @TSourceName b
on a.wantedamount>0 and a.writetime>convert(varchar(10),getdate()) and a.sourcename=b.sourcename
print '0.03的税收总数:'
print convert(varchar(64),@intTax1)
select @intTax2=sum(convert(bigint,wantedamount*0.05)) from moneylog where wantedamount>0 and writetime>convert(varchar(10),getdate())
and sourcename in ('10034','10063','10055')
print '0.05的税收总数:'
print convert(varchar(64),@intTax2)
print '所有税收今天的总数:'
print convert(varchar(64),@intTax1+@intTax2)
print '从2005-08-24到现在的税收总数:'
select @intTax1=sum(convert(bigint,wantedamount*0.03)) from moneylog a inner join @TSourceName b
on a.wantedamount>0 and a.sourcename=b.sourcename
select @intTax2=sum(convert(bigint,wantedamount*0.05)) from moneylog where wantedamount>0
and sourcename in ('10034','10063','10055')
select @intTax=@intTax1+@intTax2
Print convert(varchar(10),@intTax)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值