从值中减去百分比

Posted

技术标签:

【中文标题】从值中减去百分比【英文标题】:Subtracting percentages from Values 【发布时间】:2018-01-02 18:07:27 【问题描述】:

我有一组简单的表格,其中输入了基本的用户信息。我知道如何显示工资,但我不确定如何将所有员工的工资减去 50%,四舍五入到小数点后一位。

到目前为止,这是我的方法以及如何将百分比四舍五入到 1 d.p,但我不确定如何计算并从工资中减去百分比:

**ROUND_ABS, SELECT salary + (salary /100 *1)/1;**

这是它所引用的表:

ID  LastName    FirstName   Address          Salary 

1   Hansen      Ola         Timoteivn 10     23.600 
2   Svendson    Tove        Borgvn 23        29.687
3   Pettersen   Kari        Storgt 20        34.762

【问题讨论】:

这是甲骨文吗?请参阅round() 函数。实际样本数据会有所帮助。 HIRE_DATE 与它有什么关系? 是的,它是甲骨文。示例数据以粗体提供,HIRE_DATE 用于另一个部分,这也可能是不正确的,我打算删除但忘记了道歉。编辑我现在已经删除了这个部分 您的部分问题似乎与初等算术有关。如果薪水在 salary 列中,并且您必须从薪水中减去 44%,则公式为 salary * ( 1 - 44/100 ) - 如果 44 是一个变量(列名等),您将使用它而不是 44。这与编程或任何类型的计算机技术无关。 【参考方案1】:

这样的?据我了解,你必须计算工资的一半,然后将其四舍五入到小数点后一位。

SQL> with test (name, salary) as
  2    (select 'Svenson', 29687.13 from dual union
  3     select 'Pettersen', 34762.47 from dual
  4    )
  5  select name, salary, salary / 2 half, round(salary / 2, 1) rounded_half
  6  from test;

NAME          SALARY       HALF ROUNDED_HALF
--------- ---------- ---------- ------------
Pettersen   34762,47  17381,235      17381,2
Svenson     29687,13  14843,565      14843,6

SQL>

【讨论】:

这是在正确的轨道上,但我知道可以在一行中执行此语句。为了简化,我需要尝试从工资中减去 50%,然后将其四舍五入到小数点后 1 位。感谢大家迄今为止的帮助。 “一行”是第 5 行,只有“ROUND(SALARY / 2, 1)”。我故意显示其他值,以便您可以更轻松地了解正在发生的事情,逐条添加信息(除以 2,四舍五入)。【参考方案2】:

如果您希望直接从查询中选择 50% 的薪水,以下应该可行:

SELECT Id, LastName, FirstName, Address, ROUND((Salary/2),1) from Table_Name

【讨论】:

以上是关于从值中减去百分比的主要内容,如果未能解决你的问题,请参考以下文章

Sass 计算百分比减去 px

NumberFormat 从值中删除逗号 ( , )?

JS从值中获取键[重复]

检测是不是从值中选择了特定选项[重复]

scss 从值中删除单位

从值中检索一系列数据 Berkeley DB