如何在MySQL数据库进行子查询

子查询是将一个查询语句嵌套在另一个查询语句中,内层查询语句的查询结果,可以作为外层查询语句提供查询条件。子查询中可能包括IN、NOT IN、ANY、ALL、EXISTS和NOT EXISTS等关键字,还包括比较运算符,如“=”、“!=”等,那如何进行子查询,具体操作如下:

操作方法

  • 01

    第一步,首先,在一个查询中的查询结果作为外层查询的条件,可以用IN关键字,代码如下: SELECT * FROM city WHERE CountryCode IN (SELECT Code FROM country); 如下图所示:

  • 02

    第二步,其次,外层查询的条件不在内层查询结果,可以用NOT IN关键字,代码如下: SELECT * FROM city WHERE CountryCode NOT IN (SELECT Code FROM country); 如下图所示:

  • 03

    第三步,使用EXISTS关键字查询时,内层查询语句不返回查询的记录,而是返回一个Boolean值;当内层查询返回的值为true时,外层查询语句将进行查询,如果返回false时,将不进行查询或查询结果为空,代码如下: SELECT * FROM city WHERE EXISTS (SELECT Name FROM country); 如下图所示:

  • 04

    第四步,由第三步可知,与EXISTS相对的是NOT EXISTS,当内层查询返回的值为false时,外层查询语句将进行查询,如果返回true时,将不进行查询或查询结果为空,代码如下: SELECT * FROM city WHERE NOT EXISTS (SELECT Name FROM country); 如下图所示:

  • 05

    第五步,满足其中的任一条件,就可以通过该条件来执行外层查询语句,用关键字ANY,代码如下: SELECT * FROM city WHERE Population >= ANY (SELECT Population FROM country); 如下图所示:

  • 06

    第六步,子查询还包含比较运算符,有“>="、“<="、"!="等关键字,代码如下: SELECT * FROM city WHERE Population >=  (SELECT Population FROM country WHERE Name = 'Afghanistan'); SELECT * FROM city WHERE Population <=  (SELECT Population FROM country WHERE Name = 'Afghanistan'); SELECT * FROM city WHERE Population !=  (SELECT Population FROM country WHERE Name = 'Afghanistan'); 如下图所示:

  • 07

    第七步,满足所有条件,只有满足内层查询语句返回所有结果,代码如下: SELECT * FROM city WHERE Population >= ALL (SELECT Population FROM country WHERE Name = 'Afghanistan'); 如下图所示:

(0)

相关推荐

  • PHP操作mysql数据库:[2]查询数据

    本文主要详细讲解如何使用php语言,对mysql数据库进行查询.添加.删除.更新等操作. 一.前言 01 数据库连接成功以后,下面就要进行数据库的操作了,本文主要解决一下如何进行数据库的查询操作! 二 ...

  • Mysql常见子查询语句

    常见子查询语句 形式: where  字段  比较运算符  (标量子查询): 因为其相当于: where  字段  比较运算符  一个具体值:  //比如:where  age > 18 使用i ...

  • 如何在Ubuntu中安装MySQL数据库

    我们在Windows系统中安装过MySQL数据库,那么如何在Ubuntu系统中安装呢?下面小编给大家分享演示一下. 操作方法 01 首先我们需要登录MySQL的官方平台下载Ubuntu的安装包,如下图 ...

  • 如何在MySQL中创建数据库

    MySQL是一种复杂的程序.它的所有命令必须通过命令行输入:且它不提供可视化界面.因此,了解创建和管理数据库的基本知识将为你节省不少时间并避免不少麻烦.参考以下方法创建一个保存了美国各州及其人口数的数 ...

  • 如何在linux下安装mysql数据库并配置

    mysql最流行的关系型数据库之一,目前隶属于oracle公司,因体积小.速度快.总体拥有成本低,开放源代码这一特点,所以是我们日常开发的首选. 操作方法 01 查找以前是否安装有mysql,使用下面 ...

  • 如何在Pycharm中连接配置MySQL数据库

    我们运用Pycharm制作软件的时候,经常需要连接MYSQL数据库.那么在Pycharm中如何配置MYSQL的连接呢?下面小编给大家分享一下. 操作方法 01 打开Pycharm软件,点击顶部的Vie ...

  • MySQL教程(MySQL数据库入门教程)

    一.MySQL基础1.1.MySQL概述数据库顾名思义,就是存储数据的仓库,这些数据是有组织存储的(DataBase简称DB).而数据库管理系统,即操作和管理数据的大型软件(DataBase Mana ...

  • MYSQL数据库复习重点

    操作方法 01 这是大学生们在期末考试的复习重点:MYSQL数据库策略.请大家作为参考,努力通过MYSQL考试! 02 对emp和dept要熟悉,考试就考那个表 1.create table XXX ...

  • Python连接mysql数据库及python使用mysqldb连接数据库教程

    做python的时候需要用到数据库,于是自己重新整理了一下数据库的知识,并且熟悉了python中MysqlDB模块的功能和函数等接口,现在系统地来总结一下吧: 首先你要做的还是下载相应的模块并且安装啦 ...