如何在功能上访问SQL表的表名?

时间:2016-06-06 13:03:51

标签: mysql sql

我有一组表格,我正在混合在一起。如果我需要添加更多内容,我希望以后能够返回并访问“原始”数据。我这样做的方法是在汇编表中添加一个引用列,该表将包含数据所来自的表的表名。

当我从他们那里查询时,如何访问我的表名?

编辑:详情:

我正在创建的表格如下:

CREATE TABLE combined_things WITH OIDS AS
(SELECT
thing1.name
thing1.shape
FROM
public.thing1_source_table

UNION

SELECT
thing2.name
thing2.shape
FROM
public.thing2_source_table);

我想添加“来源”字段:

ALTER TABLE combined_things ADD COLUMN source_id character varying(100);
ALTER TABLE comnined_things SET COLUMN source_id = {table_name}

我不知道如何拉{table_name}

1 个答案:

答案 0 :(得分:1)

您可以在创建表格时将它们添加为字符串常量

CREATE TABLE combined_things WITH OIDS AS
(SELECT
thing1.name,
thing1.shape,
CAST('public.thing1_source_table' AS CHAR(100)) source_id
FROM
public.thing1_source_table

UNION

SELECT
thing2.name,
thing2.shape,
'public.thing2_source_table'
FROM
public.thing2_source_table);

请注意,无法将列转换为varchar