程序员人生 网站导航

一个例子讲述Oracle Any子查询

栏目:数据库应用时间:2015-01-22 08:23:36

问题:
查询出Emp表中比任意1个销售员(“SALESMAN”)工资低的员工姓名、工作、工资。
分析:
销售员在Emp表中有很多条记录,每一个人工资不相等,如果返回“比任意员工的工资还低”的条件,返回比“最高工资还低”便可。
如果用子查询做,子查询中就会返回多条记录。用普通的关系符(>、<等)运行就会出错。
这时候候需要用关键字ANY。ANY放在比较运算符后面,表示“任意”的意思。

代码演示:ANY子查询

<span style="font-size:18px;">SQL> SELECT ENAME,JOB,SAL FROM EMP 2 WHERE SAL<ANY (SELECT SAL FROM EMP WHERE JOB='SALESMAN') 3 /</span>


代码解析:
<any:比子查询结果中任意的值都小,也就是说,比子查询结果中最大值还小,那末同理>any表示比子查询结果中最小的还大。

 

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐