小编Jas*_*son的帖子

如何根据另一个表中的组编写一个sql语句来计算总计?

我需要从累积值计算一个百分比.要应用于每行中每个值的百分比率取决于从另一个表中获取的费率.百分比率计算需要以分层方式进行,因为税收可能会根据收入计算.

例如:工资= 1000
600*10%[首先按较低税率计算600美元]
400*30%[按较高税率计算的剩余金额]

所以,我一直试图让这个工作,但不能解决它.DBA离开了,所以它被移交给我.大多数SQL我都没问题,但我不知道如何处理这个问题,或者我应该在谷歌搜索的内容,所以道歉这是一个简单的搜索,请指导我到URL和我'我会尝试自己解决!

无论如何,下面是数据表(#v)格式的示例和范围表(#tiers)的示例,以及我到目前为止的方法.我需要一个新的列,按照我上面的解释,以正确的百分比级别计算'cval'.

希望有人可以帮助或指出我正确的方向!谢谢,J.

create table #v(
id nvarchar(50),
val money,
tid int
)

insert into #v values ('a',30,1)
insert into #v values ('b',50,1)
insert into #v values ('c',10,1)
insert into #v values ('d',30,1)
insert into #v values ('e',-80,1)


create table #tiers (
tid int,
threshold money,
amount money
)

insert into #tiers values (1,0,30)
insert into #tiers values (1,40,40)
insert into #tiers values (1,100,50)


select * from
(
select v1.id, v1.tid, v1.val,sum(v2.val) cval
from #v …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

8
推荐指数
2
解决办法
4750
查看次数

标签 统计

sql ×1

sql-server ×1

t-sql ×1