如果我的 test.db 是一个 sqlite 数据库,我有两个表,比如 tabA 和 tabB,是否可以将两个表的数据导出到一个 myFile.csv 中?
我知道如何单独导出表,但我想知道是否可以将它们导出到同一个文件中。
如果我的 test.db 是一个 sqlite 数据库,我有两个表,比如 tabA 和 tabB,是否可以将两个表的数据导出到一个 myFile.csv 中?
我知道如何单独导出表,但我想知道是否可以将它们导出到同一个文件中。
最好的答案取决于表之间的关系是什么。表中的行是否包含 1:1 映射?一张表与另一张表是否存在外键关系?
这很重要的原因是因为它关键地决定了您如何进行下一步,即将表组合(或联接)在一起。连接表后,您可以轻松地从 ResultSet 中导出所需的数据。
例如,如果 tabB 包含为 tabA 的行中包含的订单订购的项目,那么您的 tabB 很可能与 tabA 具有外键多对一关系,并且可以像这样连接在一起。
SELECT a.* b.*
FROM tabA AS a
JOIN tabB AS b ON a.primary_key = b.foreign_key
这假设您的表格式正确并且具有明确定义的关系,您可以使用该关系以一种有意义的方式将它们连接在一起。
如果 tabA 有 A、B、C 列,而 tabB 有 A、B、C 列(即一对一映射)
SELECT A, B, C from tabA
union
SELECT A, B, C from tabB
您可以对不匹配的列使用常量
SELECT A, B, NULL from tabA
union
SELECT A, NULL, C from tabB