当前位置:  数据库>sqlserver

SQL嵌套查询实例代码

    来源: 互联网  发布时间:2014-08-29

    本文导语:  本节内容: SQL嵌套查询的综合实例。 在SELECT查询语句里可以嵌入SELECT查询语句,称为嵌套查询。 有些书上将内嵌的SELECT语句称为孒查询,子查询形成的结果又成为父查询的条件。 子查询可以嵌套多层,子查询操作的数据表...

本节内容:
SQL嵌套查询的综合实例。

在SELECT查询语句里可以嵌入SELECT查询语句,称为嵌套查询。
有些书上将内嵌的SELECT语句称为孒查询,子查询形成的结果又成为父查询的条件。
子查询可以嵌套多层,子查询操作的数据表可以是父查询不操作的数据表。
子查询中不能有Group BY分组语句。

1.简单嵌套查询
范例 :
 

代码示例:
select 单价表.客户, 单价表.产品名, 单价表.单价 from 单价表  where 单价表.产品名 = (select  产品表.产品名 from 产品表 where 产品表.产品ID =  "102-5000")

说明:
查询得到单价表里满足产品名为产品表里产品ID为“102-5000”的产品的相关信息

2.带【in】的嵌套查询
范例 :
 

代码示例:
select 雇员表.雇员编号, 雇员表.姓名, 雇员表.职位, 雇员表.薪水 from 雇员表 where 薪水 in (select  薪水 from  雇员表 where 姓名='张三') 
 

说明:
查询得到雇员表里满足薪水符合姓名为张三的薪水的所有雇员的相关信息,比如 in(1000,1500,2000)表示薪水=1000或1500或2000的情况。
注:此语句完成的查询薪水和张三相等的职员,也可以使用【not in】来进行相反的查询

3.带【any】的嵌套查询
范例 :
 

代码示例:
select 雇员表.雇员编号,雇员表.姓名, 雇员表.职务, 雇员表.薪水 from 雇员表 where 薪水> any (select 薪水 from 雇员表 where 职务=‘工程师’) 

说明:
查询得到薪水比职务为工程师的薪水要高的职员信息。例如子查询结果为(2000,1500,1000),父查询的条件为"薪水>2000 or 薪水>1500 or 薪水>1000"

4.带【some】的嵌套查询
范例 :
 

代码示例:
select 雇员表.雇员编号,雇员表.姓名, 雇员表.职务, 雇员表.薪水 from 雇员表 where 薪水= some (select 薪水 from 雇员表 where 职务=‘工程师’) 
 

说明:
查询得到薪水和职务为工程师的薪水一样的职员信息,也就是和任意一个工程师的薪水相等的职员信息。
例如,子查询结果为(2000,1500,1000),父查询的条件为"薪水=2000 or 薪水=1500 or 薪水=1000"。
带【any】的嵌套查询和【some】的嵌套查询功能是一样的。早期的SQL仅仅允许使用【any】,后来的版本为了和英语的【any】相区分,引入了【some】,同时还保留了【any】关键词。

5.带【all】的嵌套查询
范例 :
 

代码示例:
select 雇员表.雇员编号,雇员表.姓名, 雇员表.职务, 雇员表.薪水 from 雇员表 where 薪水> all (select 薪水 from 雇员表 where 职务=‘工程师’) 
 

说明:
查询得到薪水比任一工程师薪水都要高的职员信息。例如子查询结果为(2000,1500,1000),父查询的条件为"薪水>2000 and 薪水>1500 and 薪水>1000"。

6.带【exists】的嵌套查询
范例 :

代码示例:
select 部门编号 from 雇员表) exists(select 部门编号 from 部门表
 

说明:
查询得到雇员表和部门表的部门编号相匹配的所有雇员信息。

7.并操作【union】的嵌套查询
范例 :
 

代码示例:
(select 部门编号 from 雇员表) union (select 部门编号 from 部门表) 
 

说明:
并操作就是集合中并集的概念。属于集合A或集合B的元素的总和就是并集。
注:该操作的嵌套查询要求属性具有相同的定义,包括类型和取值范围。

8.交操作【intersect】的嵌套查询  
范例 :
 

代码示例:
(select 部门编号 from 雇员表) intersect (select 部门编号 from 部门表) 
 

说明:
交操作就是集合中交集的概念。属于集合A且属于集合B的元素的总和就是交集。
注:该操作的嵌套查询要求属性具有相同的定义,包括类型和取值范围。

9.差操作【minus】的嵌套查询
范例 :
 

代码示例:
(select 部门编号 from 部门表) minus (select 部门编号 from 雇员表) 

说明:
差操作就是集合中差集的概念。属于集合A(前一个孒查询结果)且不属于集合B(后一个孒查询结果)的元素的总和就是差集。

注:该操作的嵌套查询要求属性具有相同的定义,包括类型和取值范围。


    
 
 

您可能感兴趣的文章:

  • sql语句中单引号嵌套问题(一定要避免直接嵌套)
  • SQL集合嵌套查询的三个例子
  • 关于SQL嵌套的误解分析
  • 请问高手:sun下如何编译informix的C++,也就是嵌套sql的c++,急呀
  • sql server中嵌套游标的例子
  • SQL嵌套查询示例解析
  • SQL中嵌套SELECT 语句用法示例
  • SQL Server误区30日谈 第26天 SQL Server中存在真正的“事务嵌套”
  • sql语句实例 取得日志条目的sql语句
  • SQL分组排序去除重复实例
  • php防止sql注入代码实例
  • T-SQL实例 函数结果设置为列别名
  • 怎样不执行SELECT SQL语句即可获得ResultSetMetaData实例????
  • sql语句实例 统计一个特定页面中的相关链接
  • SQL分组排序去重复的小实例
  • sql语句实例 统计页面链接的sql语句
  • 教你怎么使用sql游标实例分享
  • mysqli多条sql语句查询实例
  • MSSQL中递归SQL查询语句实例说明-
  • sql语句not and or执行顺序(实例解析)
  • Sql Server中存储过程中输入和输出参数(简单实例 一看就懂)
  • SQL语句练习实例之七 剔除不需要的记录行
  • SQL cursor用法实例
  • sql server 触发器实例(判断是插入、删除,还是修改)
  • sql中获取分组排序后数据方法实例
  • sql条件查询语句的简单实例
  • sql server 触发器实例:特定字段更新时触发Update触发器
  • sql语句like多个条件的写法实例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • php iis7站长之家
  • 经典sql代码--解决并清除SQL被注入恶意代码的语句
  • 创建 sql server 链接服务器的sql代码
  • sql server 删除表1某些数据的同时自动删除表2的相关数据的sql代码
  • SQL Server中选出指定范围行的SQL语句代码
  • 推荐SQL Server 重新恢复自动编号列的序号的sql代码
  • C#代码验证sql语句是否正确(只验证不执行sql)的方法
  • sql 查询所有数据库、表名、表字段的代码
  • sql 行转列示例代码
  • asp连接sql server 2005的代码
  • 一定得帮我看看sql server2000通过sql server2000jdbc driver的代码
  • 用SQL统计SQLServe表存储空间大小的代码
  • 请问在 Linux 下如何用代码实现连接oracle数据库 并 执行 SQL 语句?
  • 在ADF中跟踪SQL执行时间实现代码
  • 经典Sql代码--取出点击量最高的文章100篇,每个作者不超过5篇
  • 查找特定类别的列 sql代码
  • Oracle SQL中实现indexOf和lastIndexOf功能的思路及代码
  • 简单的SQL Server备份脚本代码
  • 经典sql代码--统计电话通话次数以及时长
  • 经典sql代码--逐行计算、逐行递延、逐行更新
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3