SQL2005 版本业务员完成情况表业务员 4月完成百分比
A 87
B 100
C 66
提成表(提成表的完成百分比的档次 是动态的,比如可以改成 130 110 95...不同的档次)
完成百分比 提成单价
120 12
100 9.5
90 8
70 6
30 0要求结果业务员 4月完成百分比 提成单价
A 87 8
B 100 9.5
C 66 0
谢谢
A 87
B 100
C 66
提成表(提成表的完成百分比的档次 是动态的,比如可以改成 130 110 95...不同的档次)
完成百分比 提成单价
120 12
100 9.5
90 8
70 6
30 0要求结果业务员 4月完成百分比 提成单价
A 87 8
B 100 9.5
C 66 0
谢谢
select *, (select top 1 a.单价 from a where t.百分比较 >= a. 百分比 order by a.百分比)
from t
if not object_id(N'Tempdb..#T') is null
drop table #T
Go
Create table #T([业务员] nvarchar(21),[4月完成百分比] int)
Insert #T
select N'A',87 union all
select N'B',100 union all
select N'C',66
GO
if not object_id(N'Tempdb..#T1') is null
drop table #T1
Go
Create table #T1([完成百分比] int,[提成单价] decimal(18,7))
Insert #T1
select 120,12 union all
select 100,9.5 union all
select 90,8 union all
select 70,6 union all
select 30,0
Go
--测试数据结束
SELECT * ,
( SELECT TOP 1
提成单价
FROM #T1
WHERE [4月完成百分比] >= 完成百分比
ORDER BY 完成百分比 DESC
) AS 提成单价
FROM #T