gpt4 book ai didi

MySQL JOIN 三张表

转载 作者:行者123 更新时间:2023-11-29 05:37:06 25 4
gpt4 key购买 nike

我有 3 个表:

地址

id, address, city, zipcode

(1500 条记录)

id, address_id, firtname, lastname, sex, title

建筑物(100 条记录)

id, address_id, name, type_of_building

多人/建筑物共享同一地址。我需要列出所有地址及其人员或建筑物信息。因此,我的查询应该返回总共 1600 条记录。

我需要编写什么样的查询来检索这些信息?

最佳答案

因为您需要来自两个不同数据集的所有记录,所以您需要使用带有 UNIONINNER JOIN .这样的事情可能会起作用:

SELECT p.id, p.firstname, p.lastname, p.sex, p.title, a.address, a.city, a.zipcode
FROM persons p
INNER JOIN addresses a on a.id = p.address_id

UNION ALL

SELECT b.id, b.name, '', '', b.type_of_building, a.address, a.city, a.zipcode
FROM buildings b
INNER JOIN addresses a on a.id = b.address_id

关于MySQL JOIN 三张表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9759495/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com