`

some all any用法

SQL 
阅读更多
引用

用some,any和all对子查询中返回的多行结果进行处理。下面我们来简单介一下这几个关键词的含义。
Some在此表示满足其中一个的意义,是用or串起来的比较从句。
Any也表示满足其中一个的意义,也是用or串起来的比较从句,区别是any一般用在非“=”的比较关系中,这也很好理解,英文中的否定句中使用any肯定句中使用sone,这一点是一样的。
All则表示满足其其中所有的查询结果的含义,使用and串起来的比较从句。
下面是一些例子
找出员工中,只要比部门号为10的员工中的任何一个员工的工资高的员工的姓名个工资。也就是说只要比部门号为10的员工中的那个工资最少的员工的工资高就满足条件。

select ename,sal
From emp
Where sal > any(select sal from emp where deptno = 10);

这里推荐用any,如果你非要用some也是没有任何问题的,结果是一样的,只是一般来讲some用在“=”的比较从句中。
select ename,sal
From emp
Where sal > some(select sal from emp where deptno = 10);

上面的用法完全OK的。
select ename,sal
From emp
Where sal = some(select sal from emp where deptno = 30) and deptno not in (select deptno from emp where deptno = 30);

上面才是some的正常用法。其含义是找到和30部门员工的任何一个人工资相同的那些员工。虽然没有找到。
最后一个关键字all的用法也很简单就是要与子查询的每一结果都要匹配。

select ename,sal
From emp
Where sal > all(select sal from emp where deptno = 20);

上面的SQL语句的意义与前面的就完全不一样了,其意义是找到比部门号为20的员工的所有员工的工资都要高的员工,也就是比那个工资最高的员工的还要高的员工
总的来说some和any用法意义是一样的,仅在词法上有不同,都表示对子查询结果集中“或”的比较关系,而all则是对子查询结果集总每一个结果“与”的关系

分享到:
评论

相关推荐

    sql中all,any,some用法

    sql中all,any,some用法实现语句,需要的朋友可以看下。

    Python函数any()和all()的用法及区别介绍

    这时候使用python的内置函数any()会非常的简洁: fruits = ['apple', 'orange', 'peach'] str = I want some apples if any(element in str for element in fruits): print string contains some fruits. any() ...

    All in One SEO Pack 1.6.12.2 附中文汉化包.rar

    汉化包使用方法: 上传到解压后上传 .mo 文件到wp-content/plugins/All in One SEO Pack/目录下即可! 更新说明(Some features):Support for Custom Post Types Advanced Canonical URLs Fine tune Page ...

    sql集合运算符使用方法

    今天介绍数据库里面的集合运算符,它是指匹配集合的每一个结果。数据库集合运算符包括:IN、ANY、SOME、ALL以及EXISTS等

    增删改查 limit限制

    数据库表的增删改查,各种用法,简单介绍any,some,all关键字,以及 not in 操作

    ImpREC 1.7c

    - Fixed some possible problems on sscanf and ordinals ("%X" with WORD type) v1.5.1 beta2 *PRIVATE* ---------------------- - Tracers - Error codes updated for the Tracers Level2 and 3 - Misc - ...

    GolangHTTP的longpolling库Golongpoll.zip

    // This launches a goroutine and creates channels for all the plumbing manager, err := golongpoll.CreateManager() // Expose events to browsers // See subsection on how to ...

    _.py:下划线 python 和用于链接的包装器

    一个python集合包装类 实现了 underscore.js 功能的一半(集合、数组、对象) 所有内置方法在 _ ... any是some的别名 @param : function(a) -> bool @return : bool _ ([ 1 , 2 , 3 ]). some ( lambda x : x > 2

    Digital Systems Engineering 数字系统工程 part1

    MIT斯坦福等大学使用8年以上的经典教材 by William J. Dally , John W. Poulton Hardcover: 693 pages Publisher: Cambridge University Press; 1 edition (June 28, 1998) Language: English ISBN-10: ...

    3、查询与增删改操作

    / 最小值MIN()3、连接查询(1)内连接查询(2)外连接查询(3)复合条件连接查询4、子查询(1)带ANY/SOME和ALL关键字的子查询(2)带EXISTS/NOT EXISTS关键字的子查询(3)使用操作符的子查询5

    [原创]自己工作中常用的模板库,简化你的工作

    ☆ get some traits of any function, include all parameter type "Params_T",return type "Return_T", host type "Object_T"(if member-function) , No.x parameter type "GetFunctionParam,x>". this type ...

    RAM清理软件htcAddictscleanRAM_1.7

    【使用方法】直接复制到PDA中,安装和运行。去掉官方语言文件,采用核心汉化。 【特别提示】CAB和绿色 ===========汉化声明============== 本汉化程序不保证能兼容所有的手机硬件和同机...

    MySQL命令大全

    MySql的用户管理是通过User表来实现的,添加新用户常用的方法有两个,一是在User表插入相应的数据行,同时设置相应的权限;二是通过GRANT命令创建具有某种权限的用户。其中GRANT的常用用法如下: grant all on mydb...

    MYSQL常用命令大全

    MySql的用户管理是通过 User表来实现的,添加新用户常用的方法有两个,一是在User表插入相应的数据行,同时设置相应的权限;二是通过GRANT命令创建具有某种权限的用户。其中GRANT的常用用法如下: grant all on mydb...

    .htaccess

    当然,这只在你知道你想拦截的IP地址时才有用,然而现在网上的大多数用户都使用动态IP地址,所以这并不是限制使用的常用方法。 <br>You can block an IP address by using: 你可以使用以下命令封禁一个IP地址...

    dx修复工具

    This design is to provide an easy operation for some labour sensitive users, and this style is easy to be integrated in other games or software to achieve the goal of human-involved free repairing....

    2009 达内Unix学习笔记

    -a 所有(all)。 -e 所有(every),比a更详细。 -f 取消保护。 -i 添加提示。 -p 强制执行。 -r 目录管理。 分屏显示的中途操作 空格<space> 继续打开下一屏; 回车<return> 继续打开下一行; b 另外开上...

Global site tag (gtag.js) - Google Analytics