在SQL中使用内部联接来对来自多个表的数据进行分组的指南

使用SQL内部联接来合并来自三个或更多表的数据

您可以使用SQL JOIN语句来组合三个或更多表中的数据。 SQL JOIN非常灵活,其强大的功能可用于合并来自多个表的数据。 让我们来看看SQL语句,它们允许您使用内部联接来合并来自三个不同表的结果。

内部联接示例

例如,在第二个表中包含一个表中包含驱动程序的表和车辆匹配。 内部连接发生在车辆和驾驶员都位于同一城市的地方。 内部联接选择两个表中包含位置列之间匹配的所有行。

下面的SQL语句结合了驾驶员和车辆位于同一城市的驾驶员和车辆表中的数据:

SELECT姓氏,名字,标记FROM驱动程序,车辆WHERE drivers.location = vehicles.location

此查询产生以下结果:

姓氏名字标签-------- --------- ---贝克罗兰H122JM史密斯迈克尔D824HA史密斯迈克尔P091YF雅各布斯亚伯拉罕J291QR雅各布亚伯拉罕L990MT

现在,扩展此示例以包含第三个表。 想象一下,你想只包括司机和车辆在周末开放的地点。 通过扩展JOIN语句,您可以将第三个表放入查询中,如下所示:

SELECT姓氏,名字,标记,open_weekends FROM司机,车辆,位置WHERE drivers.location = vehicles.location AND vehicles.location = locations.location AND locations.open_weekends ='Yes'姓氏名字标记open_weekends -------- --------- --- -------------贝克罗兰H122JM是雅各布亚伯拉罕J291QR是雅各布亚伯拉罕L990MT是

对基本SQL JOIN语句的这种强大的扩展功能可以让您以复杂的方式组合数据。 除了将表与内部联接组合在一起之外,还可以使用此技术使用外部联接组合多个表。 外连接包括存在于一个表中的结果,但在连接的表中没有相应的匹配。