繁体   English   中英

MySQL中的一个表中有多个表

[英]Multiple tables in a single table in MySQL

我已经从GitHub下载了Worlds-Country-State-and-City-Mysql-Database项目 ,该项目提供了国家,州和城市的数据库。

通常,可以在针对国家,州和城市的三个表中找到此类数据库,但此处仅是一个表,并且具有所有三个数据。 它工作正常,但我不明白它是如何工作的。

这是该表的快照。 在此处输入图片说明

在此处输入图片说明

有人请解释一下

您在这里拥有的是亲子关系。 parent_ID列指定一个位置是否属于另一个(是另一个的孩子)Location_id。

例如,要获取阿鲁巴的直系子州,您可以这样进行自我加入:

select * from mytable A
left join mytable B -- join same table
on b.parent_id=a.location_id -- with parent of the secondary being equal to the ID of the primary.
where a.location_id='Aruba'

如果您想要获得州(市)的子级,则需要再一个自我加入

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM