-
SQL查询系列之二:SQL查询中计算列
发布:51Code 时间: 2017-11-07 09:41
-
使用select查询选择列时,除可选择已有列,还可使用计算列,这些计算列可以使用常量,表达式,下面通过四个示例接合Oracle一些特性来演示这些功能。 示例1: 下面的 SQL 语句从 EMP 表...
-
使用select查询选择列时,除可选择已有列,还可使用计算列,这些计算列可以使用常量,表达式,下面通过四个示例接合Oracle一些特性来演示这些功能。
示例1: 下面的 SQL 语句从 "EMP" 表中选择部分列并增加一个常量列。SELECT empno AS 员工编号 ,ename AS 姓名, 'ORACLE' AS 公司 from emp ;
输出结果为:
员工编号 姓名 公司
-------- ---------- ------
7369 SMITH ORACLE
7499 ALLEN ORACLE
7521 WARD ORACLE
……
7934 MILLER ORACLE
14 rows selected上例语句中的'ORACLE' AS 公司 代表常量列。
示例2: 下面的 SQL 语句从 “emp”表选取部分列并将”ename”和”job”用”||”串连成一个计算列:SELECT empno AS 员工编号 ,ename ||'-'||job "姓名-岗位" FROM emp ;
员工编号 姓名-岗位输出结果为:
-------- --------------------
7369 SMITH-CLERK
7499 ALLEN-SALESMAN
7521 WARD-SALESMAN
7566 JONES-MANAGER
……
7934 MILLER-CLERK
14 rows selected上例语句中的ename ||'-'||job "姓名-岗位" 就是一个包含连接符计算列表达式。
示例3: 下面的 SQL 语句从 “emp”表选取部分列并将”sal”使用字符串函数的计算列:SELECT empno AS 员工编号 ,ename AS 姓名,to_char(sal,'L999,9') AS 工资 from emp;
输出结果为:
员工编号 姓名 工资
-------- ---------- ----------------
7369 SMITH ¥80,0
7499 ALLEN ¥160,0
7521 WARD ¥125,0
7566 JONES ¥297,5
7934 MILLER ¥130,0
14 rows selected上例语句中的to_char(sal,'L999,9') AS 工资就是包含函数表达式的计算列。
示例4: 下面的 SQL 语句从 “emp”表选取部分列并将”JOB”转化成对应中文的计算列:SELECT empno,ename,
case job
when 'CLERK' then '办事员'
when 'SALESMAN' then '销售员'
when 'ANALYST' then '分析师'
else '领导'
end AS JOB
FROM emp;输出结果为:
EMPNO ENAME JOB
----- ---------- ------
7369 SMITH 办事员
7499 ALLEN 销售员
7521 WARD 销售员
7566 JONES 领导
……
7934 MILLER 办事员
14 rows selected上例语句中的case end 语句就是包流程控制表达式的计算列。
了解51Code- 我的Java设计模式-责任链模式 04月19日
- mysql数据库开发常见问题及优化 04月18日
- 跳槽,这些java面试题必须会,99%碰到 04月16日
- Java工程师的职业规划 04月13日
- Java提高篇—对象克隆(复制) 04月08日
- 回顾2017,Java有哪些重大变化值得关注 01月02日
- SQL查询系列之四:SQL查询结果集排序 11月08日
- SQL查询系列之三:SQL条件查询 11月07日
- JavaEE技术:MyBatis Provider之@SelectProvi 08月15日
- JavaEE技术:MyBatis Mapper Select 07月06日
- Java技术:JavaEE Hibernate HQL语言 07月03日
- ORACLE SYS和SYSTEM用户区别 05月18日
- Oracle权限 05月17日
- 博为峰51Code“全栈Java工程师”课程再03月01日
- 博为峰高速发展,成功入选新三板创06月23日
