假设在【成绩表】有【主键ID】【学生姓名】【课程名称】【成绩】等字段。


现在要查询 “语文成绩>=数学成绩”的学生姓名,这时就可以使用自连接查询:

select 【学生姓名】
from 【成绩表】 AS a,【成绩表】 AS b
where a.【主键ID】=b.【主键ID】
and a.【成绩】>=b.【成绩】
and a.【课程名称】='语文'
and b.【课程名称】='数学'

自连接是指使用表的别名实现表与其自身连接的查询方法。

实操如下

1,先向表中插入数据

insert into [AS012014].[dbo].[成绩表] values(1,'李四','语文',50)

2,查询成绩表中语文成绩大于数学的学生的信息

  select * from [AS012014].[dbo].[成绩表] as a,[AS012014].[dbo].[成绩表] as bwhere a.学生姓名=b.学生姓名 and a.课程名称='语文' and b.课程名称='数学'and a.成绩>b.成绩

3,得到结果

想法

如何在表中找到语文成绩大于数学的学生

每个学生有2门课程,需要将这两门课程成绩做对比,使用自连接,将1个表看作2个表

通过 a.学生姓名=b.学生姓名 选中一个学生,a表选语文,b表选数学,固定两项的成绩

最后做对比

这个是理解了,就怕换个表就不会玩了。。。

sql 自连接的理解和使用相关推荐

  1. Database之SQLSever:SQL命令实现理解索引、规则、默认概念及其相关案例之详细攻略

    Database之SQLSever:SQL命令实现理解索引.规则.默认概念及其相关案例之详细攻略 目录 SQL命令实现理解索引.规则.默认概念 索引 规则

  2. SQL Server :理解数据记录结构

    原文:SQL Server :理解数据记录结构 在SQL Server :理解数据页结构我们提到每条记录都有7 bytes的系统行开销,那这个7 bytes行开销到底是一个什么样的结构,我们一起来看下 ...

  3. SQL自连接查询原理及完全连接用法

    SQL自连接查询语句 select * from customers c1,customer c2; 所以最终的自连接表,如下所示: 完全连接: 完全连接,是通过关键字full join连接两张表,返 ...

  4. 左连接、右连接、外连接、内连接、自连接的理解

    今天做项目遇到一个需求就是通过一个登陆字段查询该用具有的权限,然后根据权限显示对应的页面. sql语句: select * from elec_role_popedom a left outer jo ...

  5. mybatis delete返回值_面试:谈谈你对MyBatis执行过程之SQL执行过程理解

    前言 在了解了MyBatis初始化加载过程后,我们也应该研究看看SQL执行过程是怎样执行?这样我们对于Mybatis的整个执行流程都熟悉了,在开发遇到问题也可以很快定位到问题. 更重要的,在面试中遇到 ...

  6. 对于SQL注入的理解

    从网上搜索的资料,结合自己的理解整理了一下,网友们在查看时若有发现问题,还请不吝指正,谢谢! 1.什么是SQL注入? --官方说法:把SQL命令插入到web表单验证的输入框中,提交到服务器,以达到越过 ...

  7. SQL连接的理解和使用(内连接:自然连接等值连接,外连接:左连接右连接全外连接)

    目录 一.连接的介绍 连接是什么? 连接分几种? 条件连接 等值连接 自然连接 二.连接的使用 内连接 INNER JOIN 内连接与等值连接区别 内连接与自然连接区别 外连接 OUTER JOIN ...

  8. SQL 自连接 (self join)

    车站表: stops(id, name) 公交线路表: route(num, company, pos, stop) 一.对公交线路表route进行自连接 SELECT * FROM route R1 ...

  9. SQL中EXISTS理解使用

    SQL中EXISTS的理解使用 关联子查询 EXISTS理解使用 关联子查询 在讲述EXISTS用法之前,先讲述一下关联子查询: 关联子查询:是指在内查询中需要借助于外查询,而外查询离不开内查询的执行 ...

最新文章

  1. java实现线性表的顺序存储
  2. oracle存clob,oracle数据库里保存clob字段-Oracle
  3. 清华滴滴:出行数据透视中国城市空间发展报告!
  4. 转载:mouseOver/mouseOut 与 rollOver/rollOut的区别
  5. VisualStudioCode下载安装与安装中文插件教程(图文教程)
  6. jq监听子元素被点击_vue开发app点击字母展示地区列表(兄弟组件之间联动)
  7. Linux中的crontab详解
  8. 计算机在输电线路设计中的应用研究,计算机在输电线路基础设计中的应用原稿(备份存档)...
  9. UI设计实用干货素材|引导页模板
  10. bat获取命令返回值_全网都在找的redis字符串命令,总结在这了
  11. java函数改变参数值_Java函数参数值正在改变
  12. Python链家租房信息爬虫
  13. ps裁剪和裁切的区别_PS剪切、裁剪、裁切的区别
  14. 知识图谱与KBQA——槽填充
  15. offsetLeft理解以及MouseEvent接口中的screenX,clientX,pageX,offsetX区别.
  16. 小云管家(Rotor):一款开源的效率工具箱
  17. pycharm3.6.5安装不了cfg包(求解)
  18. JS DOM之DOM遍历
  19. horovodrun命令参数解析
  20. 重装纯净版WIN10

热门文章

  1. 【Word快速变PPT】
  2. python多态的例子_Python的多态性实例分析
  3. OpenGL 纹理贴图
  4. Linux文件重命名操作
  5. 2022前端相关面试题整理
  6. JavaScript:你是否对DOM还不够了解呢?一篇2w字文章带你走进DOM的世界
  7. 龙驹中学2021高考成绩查询入口,重庆市万州龙驹中学2021年排名
  8. Python 蓝桥杯试题 基础练习 十六进制转八进制
  9. PowerEdge T630服务器安装机器学习环境(Ubuntu18.04、Nvidia 1080Ti驱动、CUDA及CUDNN安装)
  10. HorizontalLayoutGroup用法