在我的SQL服务器中,我有一个“table_list”来记录必要的“sub_tables”,如下所示:
================
needed_sub_table
----------------
sub_table_1
sub_table_2 <= table_list_1
sub_table_3
=================
================
needed_sub_table
----------------
sub_table_2
sub_table_6 <= table_list_2
sub_table_9
=================
并且在sub_tables中,它们具有完全相同的列,具有不同的数据:
========================
ID | name | parentID
------------------------
1 | asv | 0
2 | asdf | 1 <= sub_table_1
3 | ggre | 2
========================
========================
ID | name | parentID
------------------------
4 | uyer | 3
5 | dfgh | 4 <= sub_table_2
6 | dhgr | 5
========================
我要做的是:合并“table_list”中列出的“sub_tables”
我试过了:
SELECT * FROM (SELECT needed_sub_list FROM table_list)
但它不起作用。
我希望看到的是:
========================
ID | name | parentID
------------------------
1 | asv | 0
2 | asdf | 1
3 | ggre | 2
4 | uyer | 3
5 | dfgh | 4 <= result of table_list_1
6 | dhgr | 5 (and so for table_list_2....etc.)
========================
因为我的项目可能需要不同的sub_tables组合, 我必须将这些组合保存在其他表中。 这意味着我不能直接合并sub_tables,因为我只能根据table_lists知道需要什么sub_tables。 有人可以帮我这个吗? 提前谢谢。
答案 0 :(得分:1)
我认为只需使用基本的UNION
查询即可获得所需内容:
SELECT ID, name, parentID
FROM sub_table_1
UNION ALL
SELECT ID, name, parentID
FROM sub_table_2
ORDER BY ID