数据库连接(内链接,外连接(左连接,右连接)

  • 内连接:内连接也叫连接,是最早的一种连接。还可以被称为普通连接或者自然连接,内连接是从结果表中删除与其他被连接表中没有匹配行的所有行,所以内连接可能会丢失信息。

    结果:为两个联接表中的匹配行的联接

    先放两个表  一个学生表;一个成绩表

    数据库连接(内链接,外连接(左连接,右连接)

    数据库连接(内链接,外连接(左连接,右连接)

  • 2

    这是进行内连接之后的表

    select *

    from Student inner join Score on Score.s_id=Student.s_id

    展现出来的是共同的数据

    数据库连接(内链接,外连接(左连接,右连接)

  • 3

    左连接(左外连接)

    将返回右表的所有行。如果左表的某行在右表中没有匹配行,则将为右表返回空值左连接:select *from Student  LEFT JOIN Score ON Student.s_id=Score.s_id

    以左表为主表,右表没数据为null

    数据库连接(内链接,外连接(左连接,右连接)

  • 4

    左外连接

    如下图:select *from Student left outer JOIN Score ON Student.s_id=Score.s_id

    数据库连接(内链接,外连接(左连接,右连接)

  • 5

    右连接(右外连接)

    将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值;

    以右表为主表,左表中没数据的为null

    select *from Student right JOIN Score ON Student.s_id=Score.s_id

    数据库连接(内链接,外连接(左连接,右连接)

  • 6

    右外连接:select *from Student right outer JOIN Score ON Student.s_id=Score.s_id

    数据库连接(内链接,外连接(左连接,右连接)

  • 7

    全外连接(FULL  JOIN 或 FULL OUTER JOIN)

    完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。

    select *from Student full  JOIN Score ON Student.s_id=Score.s_id

    select *from Student full outer JOIN Score ON Student.s_id=Score.s_id

    数据库连接(内链接,外连接(左连接,右连接)

  • 8

    笛卡尔积:

    交叉连接即笛卡尔积,结果为A×B

    select *from Student cross JOIN Score

    数据库连接(内链接,外连接(左连接,右连接)

  • 9

    自然连接(natural join)自然连接是一种特殊的等值连接,他要求两个关系表中进行比较的必须是相同的属性列,无须添加连接条件,并且在结果中消除重复的属性列。要求是两个这两个关系中参与比较的属性列必须是同名、同属性。如果两个关系中有多组这样的属性,默认是全部比较的

    END

猜你喜欢

转载自blog.csdn.net/u010451780/article/details/111029936