杭州银行×TiDB:打造首个云原生分布式国产银行核心业务系统
562
2023-07-04
Mysql子查询关键字如何使用
1. all
1.1 格式
1.2 特点
all:与子查询返回的所有值比较为true则返回true
all可以与=,>=,>,<,<=,<>结合使用,分别表示等于,大于等于,大于,小于,小于等于,不等于其中的所有数据
大于all表示指定列中的值必须要大于子查询集中的每一个值,即必须要大于子查询集的最大值;如果是小于即小于子查询中的最小值。
1.3 操作
2. any(some)
1.1 格式
1.2 特点
any:与子查询返回的所有值比较为true则返回trueany可以与=,>=,>,<,<=,<>结合使用,分别表示等于,大于等于,大于,小于,小于等于,不等于其中的任何一个数据大于any表示指定列中的值必须要大于子查询集中的任何一个值,即必须要大于子查询集的最小值;其他同理some可以理解为any的别名
1.3 操作
3. in
1.1 格式
1.2 特点
in用于判断某个记录的值,是否在指定的集合中在in关键字前边加上not可以将条件反过来
1.3 操作
4. exist
1.1 格式
1.2 特点
该子查询如果“有数据结果”(至少返回一行数据),则该EXISTS()结果为:true,外层查询执行该子查询如果“没有数据结果”(没有任何数据返回),则该EXISTS()结果为:false,外层查询不执行EXISTS后面的子查询不返回任何实际数据,只返回真或假,当返回真时where条件成立注意:EXISTS关键字,比IN关键字的运算效率高,因此,在实际开发中,特别是大数据量时,推荐使用EXISTS关键字
1.3 操作
1.4 解释
外层查询进行查询时,外层查询会一行一行执行,第一行执行时,判断子查询是否为true,为true则此行数据被查出,接着第二行查询。。。以此往复。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。