SQL的查询语句中有一个“自连接查询”怎么理解?能举个例子就更好了!

如题所述

第1个回答  推荐于2018-03-09
假设在【成绩表】有【主键ID】【学生姓名】【课程名称】【成绩】等字段。
现在要查询 “语文成绩>=数学成绩”的学生姓名,这时就可以使用自连接查询:

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

自连接是指使用表的别名实现表与其自身连接的查询方法。本回答被提问者和网友采纳
第2个回答  2010-08-14
自连接查询,简单的说就是你在where中的条件都是在同一个表中的,比如,一张客户表
id name dept
1 a d1
2 b d2
3 c d1
...
当你要找出跟a在同一个dept的人的名字时,你可以用
select t1.* from tb t1, tb t2
where t1.name='a' and t1.dept = t2.dept

大致上就是这个意思啦,用同一张表里的两个条件来关联就是了。。。
第3个回答  2018-05-04
假设在【成绩表】有【主键ID】【学生姓名】【课程名称】【成绩】等字段。
现在要查询 “语文成绩>=数学成绩”的学生姓名,这时就可以使用自连接查询:

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

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

SQL的查询语句中有一个“自连接查询”怎么理解?能举个例子就更好了!
假设在【成绩表】有【主键ID】【学生姓名】【课程名称】【成绩】等字段。现在要查询 “语文成绩>=数学成绩”的学生姓名,这时就可以使用自连接查询:select 【学生姓名】from 【成绩表】 AS a,【成绩表】 AS b where a.【主键ID】=b.【主键ID】and a.【成绩】>=b.【成绩】and a.【课程名称...

SQL SERVER如何理解自连接?什么情况下用?
自连接就是自身连接,也就是一个表中的一个属性和另外 一个属性相关联的情况。比如:课程表中的属性为(课程号,课程名称,先修课号,学分)。其中先修课号表示在学习本门课程之前需要学习的课程号码,其取值应该来自于课程表中的课程号。如果在这个表中查询一门课程的先修课的先修课就用到了自身...

SQL查询中什么时候用自连接及外连接?
自连接?你是说一个表自己和自己连接?比如,一个表,里面的字段有父子关系。比如人员,有上下级,表的字段类似,id,parentid,name,...这时候如果想取数据,可能要自己和自己连接,一行的parentid对应另一行的id.至于说外连接,就是两个表,比如a和b,想把a表中的数据全取出来,而b表中如果有对...

读SQL进阶教程笔记03_自连接
示例部分,获取可重排列的SQL语句、排列的SQL语句、组合的SQL语句,以及组合扩展成3列的SQL语句,均展示了在不同情况下使用自连接的不同应用场景。比较运算符在SQL中不仅用于数值比较,还支持字符串和日期的比较,如按字典序进行排序。删除重复行的示例展示了SQL如何在实际应用中高效处理数据去重问题,理解...

sql 自连接有什么作用,请举例说明!!!
比如查重复记录 更为通常的,举个例子,员工表,有些记录是经理,其他是员工,员工和经理是多对一关系 你如果要查询某经理的下属,肯定需要自连接 随便举的例子,根据项目需求不同,会有各种各样的情况

SQL进阶技巧——自连接的用法全解!
1. 排列与组合例如,通过自连接,我们可以从商品表中生成所有商品的有序对,包括所有可能的排列组合。但需要注意区分有序对(如“苹果,橘子”)和无序对(如{苹果,橘子}),并理解自连接如何处理顺序和重复元素。2. 删除重复行对于无主键的重复行,自连接与关联子查询结合,能有效地识别和去除重复...

sql自连接查询问题
这个语句的意思是:把一张表看成2张表,查询2张表里 kind 相同,但 departNo 不一样的列,就是这么简单。如表数据是这样的:kind departNo 1 001 1 002 那查询的结果就是 c1.kind c1.departNo c2.kind c2.departNo 1 001 1 002 这样就比较清楚了吧,其实更加正规的写...

一张图带你搞懂SQL四种关联查询
理解SQL的关联查询对于初学者来说是一项挑战,但借助一张图,我们可以清晰地掌握这四种基本操作。当我们连接两个表时,新表会融合左表和右表的字段内容,这是连接操作的基本原理。首先,我们遇到的是INNER JOIN(内连接),它只保留两个表中满足连接条件的数据,就像是找出两个集合的交集。如果一个表与...

SQL专题(十六)自连接
自连接经常与非等值连接结合使用,例如在删除重复行时,尽管关联子查询与连接操作不同,但在 SQL 的语义层面,它们都是处理集合的手段。自连接与 GROUP BY 结合时,可以生成递归集合,这体现了 SQL 面向集合的特性,帮助我们理解二维表数据的集合本质。自连接操作在处理时需要特别注意性能,因为它的开销较...

一张图带你搞懂SQL四种关联查询
对于SQL初学者来说,理解关联查询的四种类型可能颇具挑战性。下面这张直观的图将帮助你掌握这关键的概念。当两个表进行连接操作时,结果会形成一个新的表,其中包含了左表和右表的字段信息。我们先来看一下最基础的INNER JOIN(内连接)。INNER JOIN确保只有在连接条件匹配的两个表行中,数据才会被保留...

相似回答