iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >SQL编程中的子查询及注意事项是什么
  • 894
分享到

SQL编程中的子查询及注意事项是什么

2024-04-02 19:04:59 894人浏览 薄情痞子
摘要

今天就跟大家聊聊有关sql编程中的子查询及注意事项是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。当一个查询是另一个查询的条件时,称之为子查询。

今天就跟大家聊聊有关sql编程中的子查询及注意事项是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

当一个查询是另一个查询的条件时,称之为子查询。子查 询可以使用几个简单命令构造功能强大的复合命令。子查询最常用于SELECT-SQL命令的 WHERE子句中。子查询是一个 SELECT 语句,它嵌套在一个 SELECT、SELECT...INTO 语句、INSERT...INTO 语句、DELETE 语句、或 UPDATE 语句或嵌套在另一子查询中。

语法:select ....from 表1 where 列1 > (子查询)

外面的查询成为父查询,圆括号嵌入的查询成为称为子查询。SQL Server 执行时,先执行子查询部分,求出子查询部分的值,再执行整个父查询,返回最后的结果。

查看多表的数据也可使用表连接,表连接(join on...),表连接都可用子查询替换,但有的子查询不能用表连接替换,子查询比较灵活,方便,形式多样,适合于作为查询的筛选条件。

例如:

结果为:

1、In 和 Not In子查询

1> 如果你的子查询将返回多个数据行,你可以用IN和NOT IN操作符来构造主查询的检索条件。IN和NOT IN操作符的用途是测试一个给定的比较值有没有出现在一个特定的集合里。只要主查询里的数据行与子查询所返回的任何一个数据行匹配,IN操作符的比较结果 就将是true。如果主查询里的数据行与子查询所返回的所有数据行都不匹配,NOT IN操作符的比较结果将是true。

例如:

SELECT * FROM student WHERE student_id IN (SELECT student_id FROM absence); name | sex | student_id |+-------+-----+------------+| Kyle | M | 3 || Abby | F | 5 |

2>IN和NOT IN操作符还可以用在将返回多个数据列的子查询里。换句话说,你可以在数据表子查询里使用它们。此时,你需要使用一个数据行构造器来给出将与各数据列比较的比较值。

例 如:

SELECT last_name, first_name, city, state FROM president WHERE (city, state) IN (SELECT city, state FROM president WHERE last_name = 'Roosevelt'); +-----------+-------------+-----------+-------+| last_name | first_name | city | state |+-----------+-------------+-----------+-------+| Roosevelt | Theodore | New York | NY || Roosevelt | Franklin D. | Hyde Park | NY |+-----------+-------------+-----------+-------+

2、Exists 和 Not Exists 子查询

Exists可以检测数据是否存在。如果子查询的结果非空,则Exists(子查询)将返回真(true),否则返回假(false)。

If Exists (子查询) 语句

Exists 和 In 一样,同样允许添加Not关键字实现取反操作,Not Exists 表示不存在。

3.子查询的注意事项

<1>使用子查询的原则

1.一个子查询必须放在圆括号中。

2.将子查询放在比较条件的右边以增加可读性。

子查询不包含 ORDER BY 子句。对一个 SELECT 语句只能用一个 ORDER BY 子句,

并且如果指定了它就必须放在主 SELECT 语句的最后。

ORDER BY 子句可以使用,并且在进行 Top-N 分析时是必须的。

3.在子查询中可以使用两种比较条件:单行运算符和多行运算符。

<2>子查询的类型

单行子查询:从内 SELECT 语句只返回一行的查询

多行子查询:从内 SELECT 语句返回多行的查询

<3>单行子查询

单行子查询是从内查询返回一行的查询。在该子查询类型中用一个单行操作符。幻灯片中列出了单行操作符。

4.查询的方法:<1>联合:合并多个数据集中的行 <2>子查询:将一个查询嵌套在另一个查询中 <3>连接:合并多个数据表中的列

5.什么是相关子查询

相关子查询依赖于外部查询。外部查询和SQL Server子查询是有联系的,尤其在子查询的WHERE语句中更是如此。相关子查询的工作方式是:在子查询中找到外部查询的参考时执行外部查询,此时将结果返回给子查询。然后在外部查询返回的结果集上执行子查询操作。

相关子查询的执行性能:由于相关子查询中的子查询在外部查询返回的结果集上进行执行,其效率肯定下降。子查询的性能完全依赖于查询和有关的数据。但是,如果相关子查询的语句写得很有效率,则其执行性能能够胜过那些使用几个连接和临时表的程序。

看完上述内容,你们对SQL编程中的子查询及注意事项是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网数据库频道,感谢大家的支持。

您可能感兴趣的文档:

--结束END--

本文标题: SQL编程中的子查询及注意事项是什么

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

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

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

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

下载Word文档
猜你喜欢
  • SQL编程中的子查询及注意事项是什么
    今天就跟大家聊聊有关SQL编程中的子查询及注意事项是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。当一个查询是另一个查询的条件时,称之为子查询。...
    99+
    2024-04-02
  • SQL编程中高级查询及注意事项有哪些
    SQL编程中高级查询及注意事项有哪些,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1.什么是子查询当一个查询是另一个查询的条件时,称之为子查询...
    99+
    2024-04-02
  • sql查询like的注意事项有哪些
    在使用SQL查询中使用LIKE时,有一些注意事项需要注意:1. 匹配模式:在LIKE语句中,可以使用通配符来匹配模式。%表示零个或多...
    99+
    2023-08-30
    sql
  • 在mysql中查询缓存的注意事项
    这篇文章主要介绍在mysql中查询缓存的注意事项,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!查询优化注意事项对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建...
    99+
    2023-06-14
  • Golang中interface{}的注意事项是什么
    这篇“Golang中interface{}的注意事项是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Golang中int...
    99+
    2023-07-05
  • Java中Collections.emptyList()的注意事项是什么
    小编给大家分享一下Java中Collections.emptyList()的注意事项是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!偶然发现有小伙伴错误地使用...
    99+
    2023-06-14
  • Go中interface{}的注意事项是什么
    这篇文章主要介绍“Go中interface{}的注意事项是什么”,在日常操作中,相信很多人在Go中interface{}的注意事项是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go中interface{...
    99+
    2023-07-05
  • .height()的注意事项是什么
    这篇文章将为大家详细讲解有关.height()的注意事项是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   .height()   描述: 获取匹配元素集合中的...
    99+
    2024-04-02
  • React中style的使用方法及注意事项是什么
    这篇“React中style的使用方法及注意事项是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“React中style的...
    99+
    2023-07-05
  • SQL Server子查询的规则是什么
    这篇文章主要介绍“SQL Server子查询的规则是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SQL Server子查询的规则是什么”文...
    99+
    2023-04-21
    sql server
  • localStorage的用法及使用注意事项是什么
    这篇文章主要讲解了“localStorage的用法及使用注意事项是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“localStorage的用法及使用注意事项是什么”吧!localStor...
    99+
    2023-06-29
  • Assert.assertEquals的使用方法及注意事项是什么
    这篇文章主要介绍了Assert.assertEquals的使用方法及注意事项是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Assert.assertEquals的使用方法及注意事项是什么文章都会有所收获,...
    99+
    2023-06-30
  • PyGraphviz安装使用及注意事项是什么
    本篇内容主要讲解“PyGraphviz安装使用及注意事项是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PyGraphviz安装使用及注意事项是什么”吧!1. 工具说明PyGraphviz ...
    99+
    2023-07-05
  • Python中深浅拷贝的使用及注意事项是什么
    这篇文章主要讲解了“Python中深浅拷贝的使用及注意事项是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python中深浅拷贝的使用及注意事项是什么”吧!一、Python深浅拷贝概念在...
    99+
    2023-07-05
  • SQL Server中的子查询和表链接概念及使用是什么
    SQL Server中的子查询和表链接概念及使用是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.子查询概念 ...
    99+
    2024-04-02
  • mysql中大数据进行查询优化的注意事项
    这篇文章主要介绍mysql中大数据进行查询优化的注意事项,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!mysql中大数据查询优化的注意:1、对查询进行优化,应尽量避免全表扫描;2、应...
    99+
    2024-04-02
  • 使用.removeProp的注意事项是什么
    本篇内容主要讲解“使用.removeProp的注意事项是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“使用.removeProp的注意事项是什么”吧!  ...
    99+
    2024-04-02
  • 使用.prop的注意事项是什么
    这篇文章主要介绍“使用.prop的注意事项是什么”,在日常操作中,相信很多人在使用.prop的注意事项是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”使用.prop的注意...
    99+
    2024-04-02
  • 浅谈java中null是什么,以及使用中要注意的事项
    1.null既不是对象也不是一种类型,它仅是一种特殊的值,你可以将其赋予任何引用类型,你也可以将null转化成任何类型,例如:Integer i=null;Float f=null;String s=null;但是不能把null赋值给基本类...
    99+
    2023-05-31
    java null ava
  • Java异步编程API打包的步骤和注意事项是什么?
    在Java开发中,异步编程一直都是一个重要的话题。随着业务的复杂化,异步编程的需求也越来越大。而Java的异步编程API就是帮助我们实现异步编程的重要工具之一。在本文中,我们将会介绍Java异步编程API打包的步骤和注意事项。 异步编程...
    99+
    2023-08-28
    异步编程 api 打包
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作