gpt4 book ai didi

MySQL 左连接限制为一行

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

我有以下数据库结构

table_countries
----------
country_id
country_name

table_cities
----------
city_id
country_id
city_name

table_streets
----------
street_id
city_id
street_name

table_people
----------
person_id
street_id
person_name

有多个国家,可以有多个城市,又可以有多个街道等等。

我希望执行一个查询,以获取其中有 1 人或多人的所有国家/地区的列表。

问题是 countries 表没有直接链接到 people 表。 LEFT JOIN 返回同一国家/地区的多行。

最佳答案

对于您编辑中提到的预期结果,我会将左连接更改为内部连接,并仅选择带有 group by 子句的国家/地区名称。注意 on 子句中的外键名称,我认为你必须澄清/更正你的表结构:

SELECT 
table1.country

FROM
table1 JOIN table2 ON table1.id = table2.table1_id
JOIN table3 ON table2.id = table3.table2_id
JOIN table4 ON table3.id = table4.table3_id

GROUP BY
table1.country

关于MySQL 左连接限制为一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21939527/

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