UNION ALL获取选项卡名称

2024-10-05 14:22:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我将Python与SQLite模块一起使用。我正在两个表上执行union all语句,是否有方法获取每条记录所来自的表的名称,因此当我执行fetch all时,它看起来像这样:

value11, value12, value13, table1
value21, value22, value23, table2
value31, value32, value33, table1

我能想到的唯一方法是在每个表中创建另一个包含表名的列,尽管如果已经有类似的内容,这将存储大量不必要的数据

谢谢


Tags: 模块方法名称sqlite记录语句fetchall
2条回答

您可以在查询中包括表名:

select value11, value12, value13, 'table1' as which from table1
union all
select value21, value22, value23, 'table2' as which from table2
union all
select value31, value32, value33, 'table1' as which from table1;

您可以使用如下查询:

SELECT 'table1' as tablename , t1.field1, t1.field2 FROM table1
UNION ALL
SELECT 'table2' as tablename , t2.field1, t2.field2 FROM table2

相关问题 更多 >