数据库(三)

笔记本总算寄回来了,这就学习一波数据库

联结表

使用特殊语法,可以联结多个表返回一组输出,联结在运行时关联表中正确的行

创建联结:指定要联结的所有表以及关联它们的方式即可

image-20220120092409603.png

注意:引用的列名可能出现歧义时,必须使用完全限定列名(用一个句点分隔表名和列名)

如果不加where子句,会出现笛卡尔积的情况,即第一个表中的每一行都和第二个表中的每一行配对,而不管逻辑是否配对

等值联结(内联结)

上述where子句描述等价于下面

image-20220120100405763.png

联结多个表

eg1:

image-20220126190634635.png

eg2:

子查询

image-20220126191536540.png

联合查询

image-20220126191825492.png

创建高级联结

使用表别名来缩短SQL语句,同时允许在一条select语句中多次使用相同的表

eg:

image-20220126214833328.png

使用不同类型的联结

  • 自联结:在一条select语句中不止一次引用相同的表
  • 自然联结:每一列只返回一次
  • 外联结:联结包含在相关表中没有关联行的行

eg:

子查询

image-20220126215318770.png

自联结查询

image-20220126215602217.png

最后修改:2022 年 01 月 26 日
如果觉得我的文章对你有用,请随意赞赏