博客
关于我
Join
阅读量:773 次
发布时间:2019-03-24

本文共 657 字,大约阅读时间需要 2 分钟。

SQL JOIN用于根据两个或多个表中的列之间的关系,从这些表中查询数据。有时为了得到完整的结果,我们需要从多个表中获取信息。这时候就需要使用JOIN操作。

以下是两个相关表的结构:

Persons表包含以下字段:

  • Id_P
  • LastName
  • FirstName
  • Address
  • City

Orders表包含以下字段:

  • Id_O
  • OrderNo
  • Id_P

例如,我们可以通过以下SQL查询从Persons表和Orders表中获取数据:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons, Orders WHERE Persons.Id_P = Orders.Id_P

这个查询可以理解为:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons INNER JOIN Orders ON Persons.Id_P = Orders.Id_P

JOIN类型

  • JOIN:如果一个表中至少有一个匹配,就返回行。
  • LEFT JOIN(LEFT OUTER JOIN):即使右表中没有匹配,左表仍然返回所有行。
  • RIGHT JOIN(RIGHT OUTER JOIN):即使左表中没有匹配,右表仍然返回所有行。
  • FULL JOIN:只要其中一个表中存在匹配,就返回所有相关行。

这种做法可以帮助你在处理多个表的数据时,有效地获取所需的信息。

转载地址:http://vibkk.baihongyu.com/

你可能感兴趣的文章
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>
mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
查看>>
MYSQL:基础——3N范式的表结构设计
查看>>
MYSQL:基础——触发器
查看>>
Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
查看>>
mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
查看>>
mysqldump 参数--lock-tables浅析
查看>>
mysqldump 导出中文乱码
查看>>
mysqldump 导出数据库中每张表的前n条
查看>>
mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
查看>>
Mysqldump参数大全(参数来源于mysql5.5.19源码)
查看>>
mysqldump备份时忽略某些表
查看>>
mysqldump实现数据备份及灾难恢复
查看>>
mysqldump数据库备份无法进行操作只能查询 --single-transaction
查看>>
mysqldump的一些用法
查看>>
mysqli
查看>>
MySQLIntegrityConstraintViolationException异常处理
查看>>
mysqlreport分析工具详解
查看>>