Oracle开发中,依然存在算术运算,关系运算,和逻辑运算。
² 算术运算
Oracle中的算术运算符,没有C#中的算术运算符丰富,只有+、-、*、/四个,其中除号(/)的结果是浮点数。求余运算只能借助函数:MOD(x,y):返回x除以y的余数。
案例3:每名员工年终奖是2000元,请显示基本工资在2000元以上的员工的月工资,年总工资。
该案例的表请参见本章练习的附表1、附表2、附表3,这三张表是ORACLE 10g自带的。
代码演示:查询中的算术运算
SQL> SELECT ENAME,SAL,(SAL*12+2000) FROM EMP WHERE SAL>2000;
6 rows selected |
² 关系运算和逻辑运算
Oracle中Where子句经中经常见到关系运算和逻辑运算,常见的关系运算有:
运算符 | 说明 | 运算符 | 说明 |
= | 等于 | > | 大于 |
<>或者!= | 不等于 | <= | 小于或者等于 |
< | 小于 | >= | 大于或者等于 |
表3 Oracle的关系运算符
逻辑运算符有三个:AND、OR、NOT
关系运算和逻辑运算与前面SQL Server学习过的一致。
² 字符串连接操作符(||)
在Oracle中,字符串的连接用双竖线(||)表示。比如,在EMP表中,查询工资在2000元以上的姓名以及工作。
代码演示:字符串连接
SQL> SELECT (ENAME || 'is a ' || JOB) AS "Employee Details" ① 2 FROM EMP 3 WHERE SAL>2000; Employee Details ------------------------ JONESis a MANAGER BLAKEis a MANAGER CLARKis a MANAGER SCOTTis a ANALYST KINGis a PRESIDENT FORDis a ANALYST 6 rows selected |
代码解析:
① Oracle中字符串可以用单引号,也可以用双引号,在别名中存在空格时,必须用双引号。在表名、列名时用双引号。