美好的一天,
我希望有人可以帮我做一小段代码。我已经建立了一个销售代表佣金报告,对于销售代表赚来的每件商品,都有一天销售代表首先将该商品视为新业务,例如,商品A从01/01/2018开始。 / p>
他们的佣金细分意味着,他们在开始日期(01/01/2018 <当前日期的一年)之后的第一年获得7%,如果(01/01/2018>当前日期的1年),则获得5% <当前日期的2年),如果(01/01/2018>当前日期的2年<当前日期的3年),则为2.5%。
我已经为整个报告编写了select语句,但是我正在努力寻找与此相关的任何信息。
我假设我需要一个CASE
语句,但是我要告诉SQL检查当前日期是否小于一年,或者大于一年,但是少了2年,等等。>
非常感谢您的协助!
答案 0 :(得分:1)
我想您可以像这样使用CASE
:
SELECT
CASE
WHEN CURRENT_TIMESTAMP >= DATEADD(YEAR, 2, startdate) THEN 2.5
WHEN CURRENT_TIMESTAMP >= DATEADD(YEAR, 1, startdate) THEN 5.0
ELSE 7.0
END AS commission
请注意,案例是经过排序的。