数据库新手求解答,不太理解同一个表分成两个不同的叫法

这是题目和问题。
图片说明
图片说明

主要是不太懂这个答案解析。
图片说明

from election as e1,election as e2 这一段,为什么这个答案吧同一个表分成作两个不同的叫法,这样做的目的和意义是什么?求大佬解答一下,新手不太懂

这种是表自连的写法,搜索为E1,存在E2年份为2005年,与E1同个教师,但是课程不同。只要存在一条同个教师课程不同的记录,那么那个教师就是教了2门课以上
内连的用法,举个比较易懂的例子,比如部门,部门下有子部门,所以在子部门加parentId绑定它的父部门,如果你查部门时,想把父部门也查出来那么就用到自连

select d.*,parent.name from department as d, department as parent
where d.parent_id = parent.id

用两个表变量的where语句就是他们的连接条件,像这里就是说,查找第一张表的parent_id和第二张表的id相同的记录

关键在于e1.lno<>e2.lno。这里相当于两个课程号不同,也就是相当于求出了有两个课程以上的老师。如果不这样做,你就要嵌套查询,

简单理解,复制一张表,然后查询两张表教师一样,课程号不一样。这里就能保证讲授两门或者两门以上课程条件了,这样写会简单很多。