PostgreSQL 将不同的属性连接在一起以返回单个值

标签 postgresql postgresql-9.2

表格:

CREATE TABLE venue (id INTEGER DEFAULT NEXTVAL('venue_id_seq'), building_code     building_code, floorNo int,  roomNo int,  width int, length int);

函数:

 CREATE or REPLACE FUNCTION roomCode(_id int ) RETURNS text AS 
$$
 SELECT building_code + floorNo + roomNo FROM venue as v WHERE _id = v.id;
$$ LANGUAGE SQL;

如何将某些属性连接在一起?

最佳答案

我不知道这是否是最好的方法,但我认为它可以完成工作:

您可以使用 SELECT TEXTCAT( param 1, param 2) 如果您需要多个属性,则必须在 TEXTCAT 中使用 TEXTCAT,例如:

TEXTCAT( param 1, TEXTCAT(param 2, param3))

如果您的属性不是文本类型,那么您必须将它们转换为文本:

attribute::text

所以整体回答你的问题:

SELECT TEXTCAT(building_code::text, TEXTCAT( floorNo::text , roomNo::text))

关于PostgreSQL 将不同的属性连接在一起以返回单个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18250585/

相关文章:

postgresql - 如何正确测试日期在时间间隔内

postgresql - 如何获取 PostgreSQL 中的目标表?

stored-procedures - SQLAlchemy 从 postgresql 存储过程获取输出参数

sql - 如何在 Postgresql 中将 LIKE 与 ANY 一起使用?

postgresql - psql 似乎因长查询而超时

sql - 如何查找给定列是否存在唯一键约束

postgresql - 在 PostgreSQL 中将分钟添加到 CURRENT_TIMESTAMP

postgresql - 使用 psycopg 准备语句

postgresql - Postgres 表继承 : move from parent to child and vice versa

postgresql - postgresql 函数可以接受的最大参数数