在postgres中将两列合并为单列

时间:2015-04-17 16:52:50

标签: postgresql

我在Postgres sql中有一个表(假设tableA)包含两个具有相同类型的列(即bigint),例如columnAcolumnB。我可以将这两个列组合成一个列。那么来自columnA的数据来自columnB的数据以及用作in语句输入的结果数据?

例如我的语法是:

update tableA set columnC = 12 where columnC in 
(<appended result from column A and columnB>)

1 个答案:

答案 0 :(得分:0)

我不确切地知道你的目标是什么,但是 - 也许这会有所帮助。在PostgreSQL中,您可以定义自己的复合类型,例如:

CREATE TYPE mytype(col1 bigint, col2 bigint);

接下来,您可以在表的定义中使用它

CREATE TABLE yourtable(id SERIAL PRIMARY KEY, x mytype);

或动态创建值,就像那样:

SELECT (columnA, columnB)::mytype FROM tableA