Postgres 通知中的别名列名称
Alias column name in Postgres notify
我在 Postgres 数据库中使用触发器来调用函数并将新插入的行发送到 NodeJs 应用程序
CREATE OR REPLACE FUNCTION triggerFunction() RETURNS trigger AS $$
DECLARE
BEGIN
PERFORM pg_notify('tableName', row_to_json(NEW)::text );
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
这 returns 整行 json 格式。但是,我需要在返回此行时更改其中一个列名。
不幸的是,AS keywork 在 json 和 NEW.COLUMN_NAME AS NEW_COLUMN 的行中不起作用。我们如何才能解决这个问题?
CREATE OR REPLACE FUNCTION triggerFunction() RETURNS trigger AS $$
DECLARE
ret json;
BEGIN
select row_to_json(x) into ret from
(select NEW.abc as def, NEW.jkl, NEW.col3) x;
PERFORM pg_notify('tableName', ret::text );
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
我在 Postgres 数据库中使用触发器来调用函数并将新插入的行发送到 NodeJs 应用程序
CREATE OR REPLACE FUNCTION triggerFunction() RETURNS trigger AS $$
DECLARE
BEGIN
PERFORM pg_notify('tableName', row_to_json(NEW)::text );
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
这 returns 整行 json 格式。但是,我需要在返回此行时更改其中一个列名。
不幸的是,AS keywork 在 json 和 NEW.COLUMN_NAME AS NEW_COLUMN 的行中不起作用。我们如何才能解决这个问题?
CREATE OR REPLACE FUNCTION triggerFunction() RETURNS trigger AS $$
DECLARE
ret json;
BEGIN
select row_to_json(x) into ret from
(select NEW.abc as def, NEW.jkl, NEW.col3) x;
PERFORM pg_notify('tableName', ret::text );
RETURN NEW;
END;
$$ LANGUAGE plpgsql;