MySQL any、all

叁歲伎倆 2022-12-25 02:54 233阅读 0赞

any,all关键字必须与一个比较操作符一起使用。

any关键词可以理解为“对于子查询返回的列中的任一数值,如果比较结果为true,则返回true。

例如:

  1. select s1 from t1 where s1 > any (select s1 from t2);
  2. 假设表t1中有一行包含(10),t2包含(21,14,6),则表达式为true
  3. 如果t2包含(20,10),或者表t2为空表,则表达式为false
  4. 如果表t2包含(nullnullnull),则表达式为unkonwn

all的意思是“对于子查询返回的列中的所有值,如果比较结果为true,则返回true”
例如:

  1. select s1 from t1 where s1 > all(select s1 from t2);
  2. 假设表t1中有一行包含(10)。如果表t2包含(-5,0,+5),则表达式为true,因为10t2中的查出的所有三个值大。
  3. 如果表t2包含(12,6null,-100),则表达式为false,因为t2中有一个值12大于10
  4. 如果表t2包含(0null1),则表达式为unknown。如果t2为空表,则结果为true

not in 是 “<>all”的别名,用法相同。

语句in 与“=any”是相同的。

例如:

  1. select s1 from t1 where s1 = any (select s1 from t2);
  2. select s1 from t1 where s1 in (select s1 from t2);

语句some是any的别名,用法相同。
例如:

  1. select s1 from t1 where s1 <> any (select s1 from t2);
  2. select s1 from t1 where s1 <> some (select s1 from t2);

发表评论

表情:
评论列表 (有 0 条评论,233人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MySQLMySQL 学习

    一、E-R 模型 1.1 概述 E-R模型主要用于描述数据库中实体之间的关系。当前物理的数据库都是按照 E-R 模型进行设计的。 E(entry)即实体,一个实体

    相关 MySQLMySQL简介

    什么是MySQL 数据的所有存储、检索、管理和处理实际上是由数据库软件——DBMS( 数据库管理系统)完成的。 MySQL是一种DBMS,即它是一种数据库软件。 MyS

    相关 mysql pmadb_MYSQL

    在phpMyAdmin中提示“Configuration of pmadb… not OK”,这个问题不大,不影响使用,仅仅是一个警告。如果不想总是看见这个警告,可以用如下办法