Files
database/initdb.d/01-function.sql
T
2021-10-19 13:27:06 +07:00

22 lines
531 B
PL/PgSQL
Executable File

CREATE OR REPLACE FUNCTION "f_updatedAt"()
RETURNS TRIGGER AS $$
BEGIN
NEW."updatedAt" = now();
RETURN NEW;
END;
$$ language 'plpgsql';
CREATE FUNCTION array_distinct(anyarray) RETURNS anyarray AS $f$
SELECT array_agg(DISTINCT x) FROM unnest($1) t(x);
$f$ LANGUAGE SQL IMMUTABLE;
CREATE OR REPLACE FUNCTION normalize_reading (TEXT) RETURNS TEXT[] AS
$func$
DECLARE
s TEXT;
new_arr TEXT[] := '{}';
BEGIN
RETURN ARRAY[split_part($1,'.',1), replace($1,'.','')];
END;
$func$ LANGUAGE plpgsql IMMUTABLE;