sql(db2(中有没有一种方法可以根据列的值来分配分数,即每5次销售就获得一分,每100美元就获得一点?
我的查询:
SELECT SALES, DOLLARS, EMPLOYEE FROM EMP_SALES;
我想添加一个"POINTS"列,其中的值是上面的销售额/美元列中的积分的组合。因此,如果用户完成了5次销售,总额超过100美元,他们将获得2分。
有没有一个好的方法可以在sql中实现这一点,或者我应该通过PHP来实现这一目标?
使用此表:
EMPLOYEE | SALES | DOLLARS
-------------------------------
123 5 100
456 5 500
我希望这些结果:
EMPLOYEE | SALES | DOLLARS | POINTS
-------------------------------------------
123 5 100 2
456 5 5 6
看起来像一个简单的算术(假设员工456的美元=5是一个拼写错误,应该是500(
SELECT EMPLOYEE, SALES, DOLLARS
, (sales/5) + floor(dollars/100) as points
FROM EMP_SALES
注意floor((函数
返回小于或等于表达式的最大整数值。
换句话说,它总是向下舍入。您也可以使用round((函数,但表达式不会那么直接。