在SQL中使用SELECT进行算术运算

日期: 2013-02-18 作者:Brian Peasland翻译:孙瑞 来源:TechTarget中国 英文

问:关于SQL算术运算我有一个疑问,员工表中包含了两列:员工编号和工资,如下:     EMP      SALARY    1            10    2            20    3&nb……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

问:关于SQL算术运算我有一个疑问,员工表中包含了两列:员工编号和工资,如下:

    EMP      SALARY
    1            10
    2            20
    3            30

  现在每一行中的工资值都乘以100,得到如下结果。如果我不使用SQL的算术运算符,而是仅使用SELECT,能否得到如下结果?

    EMP      SALARY
    1            1000
    2            2000
    3            3000

  答:首先,我不得不说你的问题让我有些困惑,因为在真实的应用当中,任何情况下都是可以使用SQL算术运算符的。先不管它,我可以很简单地解答这个问题,基于以下两个假设:

  1. 工资总是存在表中(以乘以100的形式)

  2. 工资只是数值型或者null,如果非数值型,那么最终显示只能是最后两位添上00

  具体的代码如下:

SELECT emp, to_char(salary) || '00' as salary
FROM employee;

  由于这是一个连接运算符,而不是算术运算符,所以是符合你的要求的。

作者

Brian Peasland
Brian Peasland

Techtarget旗下Searchoracle网站的资深专家,有16年IT行业经验、计算机科学硕士、专攻数据库方向,曾担任系统管理员等职。此外,他还获Oracle 7.3、8和8i的OCP数据库管理员证书,目前为SGT Inc.公司首席DBA。

翻译

孙瑞
孙瑞

相关推荐

  • 利用内联视图进行数据库表合并

    利用SQL Select语句进行数据库表合并的时候,Oracle数据库专家Dan Clamage建议DBA可以使用内联视图来操作。

  • 分析并行SQL中的各个元素

    并行度(DOP)定义了将被创建的执行并行流的数量。最简单的情况,它可以理解为分配为支持你SQL执行的并行伺服进程的数量。

  • 解析T-SQL的SELECT查询语法

    Select是T-SQL语言中最复杂的语句之一。通常认为select语句是用来检索数据库中的信息,而SELECT语句针对不同要求可以进行无数的组合。

  • SQL Server中SELECT语句执行顺序解析

    关于SQL代码中Select语句的执行顺序,一直都是一个比较受忽视的问题,理解其中的原理其实是非常重要的,本文将就此问题进行一个分析。