iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >mysql嵌套查询语句实例分析
  • 720
分享到

mysql嵌套查询语句实例分析

2024-04-02 19:04:59 720人浏览 泡泡鱼
摘要

这篇文章主要讲解了“Mysql嵌套查询语句实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql嵌套查询语句实例分析”吧!

这篇文章主要讲解了“Mysql嵌套查询语句实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql嵌套查询语句实例分析”吧!

在mysql中,嵌套查询表示在一个SELECT语句的WHERE子句或HAVING子句中嵌套另一个SELECT语句的查询,也叫作子查询,语法为“SELECT语句 WHERE 条件(SELECT语句)”。

教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。

mysql嵌套查询语句是什么

嵌套查询

定义:一个内层查询语句(select-from-where)块可以嵌套在另外一个外层查询块的where子句中,其中外层查询也称为父查询,主查询。内层查询也称子查询,从查询。子查询一般不使用order by子句,只能对最终查询结果进行排序

另一种定义:在一个SELECT 语句的WHERE 子句或HAVING 子句中嵌套另一个SELECT 语句的查询称为嵌套查询,又称子查询。

嵌套查询的工作方式是:先处理内查询,由内向外处理,外层查询利用内层查询的结果嵌套查询不仅仅可以用于父查询select语句使用。还可以用于insert、update、delete语句或其他子查询中。

一、子查询的组成

1、包含标准选择列表组件的标准select查询。

2、包含一个或多个表或者视图名称的标准from子句。

3、可选的where子句。

4、可选的group by子句。

5、可选的having子句。

二、子查询的语法规则

1、子查询的select查询总是使用圆括号括起来。

2、不能包括compute或for.browse子句。

3、如果同时指定top子句,则可能只包括order by子句。

4、子查询最多可以嵌套到32层。个别查询可能会不支持32层嵌套。

5、任何可以使用表达式的地方都可以使用子查询,只要它返回的是单个值。

6、如果某个表只出现在子查询中二不出现在外部查询中,那么该表的列就无法包含在输出中。

三、返回一个值的子查询

当子查询的返回值只有一个时,可以使用比较运算符如=、、>=、<=、!=等将富查询和子查询连接起来。实例如下:

3.1 简单子查询

select name,age
from person
where age > ( select age
from person
where name = '张三');

3.2 like嵌套查询

select count(distinct(Tname)) --查询姓“张”的老师的个数
from Teacher
where Tname like '张%';

四、返回一组值的子查询

如果子查询的返回值不止一个,而是一个集合时,则不能直接使用比较运算符,可以在比较运算符和子查询之间插入ANY、SOME或ALL。其中等值关系可以用IN操作符。

4.1 in嵌套查询

in关键字用于where子句中用来判断查询的表达式是否在多个值的列表中。返回满足in列表中的满足条件的记录。

select name
from person
where countryid in ( select countryid
from country
where countryname = '中国');

4.2 some嵌套查询

some在sql中的逻辑运算符号,如果在一系列比较中,有些值为True,那么结果就为True。some的语法是:

select name from person
where countryid = some ( select countryid from country    --用等号和以下查询到的值比较,如果与其中一个相等,就返回
where countryname = '中国');

4.3 all嵌套查询

all是sql中的逻辑运算符好,如果一系列的比较都为true,那么结果才能为true。

select name from person
where countryid > all ( select countryid from country  --当countryid大于以下返回的所有id,此结果才为True,此结果才返回
where countryname = '中国');

4.4 exists嵌套查询

exists是sql中的逻辑运算符号。如果子查询有结果集返回,那么就为True。exists代表“存在”的意义,它只查找满足条件的那些记录。一旦找到第一个匹配的记录后,就马上停止查找。

exists 子查询

其中子查询是一个首先的select语句,不允许有compute子句和into关键字。

exists 的意思是,子查询是否有结果集返回。

SELECT * FROM Person
WHERE exists ( SELECT 1); --SELECT 0 SELECT NULL 返回结果都一样,因为这三个子查询都有结果集返回,因此总是True,SELECT * FROM Person照常执行

但是如果子查询中因为加了条件而没有结果集返回,则主语句就不执行了:

SELECT * FROM Person
WHERE exists ( SELECT * FROM Person
WHERE Person_Id = 100); --如果不存在Person_Id的记录,则子查询没有结果集返回,主语句不执行

五、返回新数据表的子查询

5.1 查询“001”课程比“002”课程成绩高的所有学生的学号;

Select a.Sno from (select Sno,score from SC where Sno='001') a,
(select Sno,scorefrom SC where Cno='002') b
Where a.score>b.score and a.Sno=b.Sno;

感谢各位的阅读,以上就是“mysql嵌套查询语句实例分析”的内容了,经过本文的学习后,相信大家对mysql嵌套查询语句实例分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

您可能感兴趣的文档:

--结束END--

本文标题: mysql嵌套查询语句实例分析

本文链接: https://www.lsjlt.com/news/72461.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mysql嵌套查询语句实例分析
    这篇文章主要讲解了“mysql嵌套查询语句实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql嵌套查询语句实例分析”吧! ...
    99+
    2024-04-02
  • mysql中有没有嵌套查询语句
    本文小编为大家详细介绍“mysql中有没有嵌套查询语句”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql中有没有嵌套查询语句”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
    99+
    2024-04-02
  • MySQL子查询(嵌套查询)
    子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从 MySQL 4.1 开始引入。 在SELECT 子句中先计算子查询,子查询结果作为外层另一个查询的过滤条件,查询可以基于一 个表或者多个表。子查询中常用的操作符有 AN...
    99+
    2023-09-04
    mysql 数据库 sql Powered by 金山文档
  • MySQL查询语句之复杂查询的示例分析
    这篇文章主要介绍MySQL查询语句之复杂查询的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有...
    99+
    2024-04-02
  • MySQL查询语句的执行过程实例分析
    这篇文章主要讲解了“MySQL查询语句的执行过程实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL查询语句的执行过程实例分析”吧!1、MYSQ...
    99+
    2024-04-02
  • 怎么分析Mysql中的嵌套子查询问题
    小编今天带大家了解怎么分析Mysql中的嵌套子查询问题,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“怎么分析Mysql中的嵌套子查询...
    99+
    2023-06-29
  • MySQL嵌套查询实现子查询的方法
    目录一个查询语句嵌套在另一个查询语句内部的查询1.带ANY(SOME)关键字的子查询2.带ALL关键字的子查询3.带EXISTS关键字的子查询4.带IN关键字的子查询5.带比较运算符...
    99+
    2024-04-02
  • MyBatis的嵌套查询解析
    Mybatis表现关联关系比hibernate简单,没有分那么细致one-to-many、many-to-one、one-to-one。而是只有两种association(一)、collection(多),表现很简洁。下面通过一个实例,来展...
    99+
    2023-05-31
    mybatis 嵌套 查询
  • MySQL中SQL语句分析与查询优化的示例分析
    这篇文章主要为大家展示了“MySQL中SQL语句分析与查询优化的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“MySQL中SQL语句分析与查询优化的示例...
    99+
    2024-04-02
  • PostgreSQL查询语句分析
    这篇文章主要介绍“PostgreSQL查询语句分析”,在日常操作中,相信很多人在PostgreSQL查询语句分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PostgreS...
    99+
    2024-04-02
  • MySQL基础篇 | 连接查询、子查询(嵌套)
    ✅作者简介:大家好我是@每天都要敲代码,希望一起努力,一起进步! 📃个人主页:@每天都要敲代码的个人主页 🔥系列专栏:MySQL专栏 目录 一:连接查询 1. 连接查询原理以及笛卡尔积现象 2. 内连接...
    99+
    2023-10-23
    数据库 sql
  • C语言实例讲解嵌套语句的用法
    目录一 、if 嵌套二、比较ab两个数值大小三、总结一 、if 嵌套 格式: if ( 条件 ){    if( 嵌入一个条件 ){   &n...
    99+
    2024-04-02
  • Mysql中的嵌套子查询问题
    目录Mysql嵌套子查询在WHERE子句中使用子查询单行单列子查询单行多列子查询。多行单列子查询FROM子查询:总结:select子查询用子查询用子查询Mysql嵌...
    99+
    2024-04-02
  • MySQL的慢查询实例分析
    这篇文章主要介绍“MySQL的慢查询实例分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL的慢查询实例分析”文章能帮助大家解决问题。1 概念MySQL的慢查询,全名是慢查询日志,是MySQ...
    99+
    2023-06-28
  • 详解MySQL子查询(嵌套查询)、联结表、组合查询
    一、子查询 MySQL 4.1版本及以上支持子查询 子查询:嵌套在其他查询中的查询。 子查询的作用: 1、进行过滤: 实例1:检索订购物品TNT2的所有客户的ID = + 一般,在WHERE...
    99+
    2024-04-02
  • mysql中执行查询语句的流程分析
    这篇文章给大家分享的是有关mysql中执行查询语句的流程分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。比如,在我们从student表中查询一个id=2的信息selec ...
    99+
    2024-04-02
  • golang通过mysql语句实现分页查询
    目录1.前端接口调用2.register访问入口3.解析参数4.service实现5.mapper实现1.前端接口调用 2.register访问入口 //查询一个用户下所有的sub...
    99+
    2024-04-02
  • SQL查询语句执行顺序的示例分析
    这篇文章主要介绍SQL查询语句执行顺序的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!SQL查询语句执行顺序如下:(7) SELECT  (8)&...
    99+
    2024-04-02
  • SQL中怎么实现嵌套查询
    SQL中怎么实现嵌套查询,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一个优秀的系统,会集成优秀的程序和优秀的数据库设计. 要做到这点得有足够...
    99+
    2024-04-02
  • LINQ中怎么实现嵌套查询
    这篇文章将为大家详细讲解有关LINQ中怎么实现嵌套查询,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。LINQ嵌套查询应用实例:如果我们需要取出市场部的所有员工,在以往的O/R Mapping...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作