繁体   English   中英

SQL 中的单个 select 语句中的级联数据

[英]Cascading data in single select statement in SQL

我有如下表结构,它是普通的国家,state,城市结构我试图在单个查询中获取所有数据,如下所示。 我只想要单个 select 语句中的所有数据,但我想要国家,然后是它的第一个 state 及其所有城市,然后是第二个 state 等等。

国家

+-----+----------+
| id  |   name   |
+-----+----------+
| 1   | USA      |
| 7   | Australia|
+-----+----------+

状态

+-----------+----------+------------+
| state_id  |   name   | country_id |
+-----------+----------+------------+
| 1         | state1   |     1      |
| 2         | state2   |     1      |
| 3         | state3   |     2      |
| 4         | state4   |     2      |
+-----+----------------+------------+

城市

+-----+----------+------------+
| id  |   name   |  state_id  |
+-----+----------+------------+
| 1   | city1    |     1      |
| 2   | city2    |     1      |
| 3   | city3    |     1      |
| 4   | city4    |     2      |
| 5   | city5    |     2      |
| 6   | city6    |     2      |
+-----+----------+------------+

我正在尝试获取 output 如下所示

+-----+----------+
| id  |   name   |
+-----+----------+
| 1   | USA      |
| 1   | state1   |
| 1   | city1    |
| 2   | city2    |
| 3   | city3    |
| 2   | state2   |
| 4   | city4    |
| 5   | city5    |
| 6   | city6    |
| 7   | Australia|
+-----+----------+

暂无
暂无

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

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