- https://github.com/sakai135/wsl-vpnkit
- https://qiita.com/Sicut_study/items/88216ee9a928986dea49
- https://qiita.com/takelushi/items/fbe51a1a3a5ba993a6b8
CREATE OR REPLACE FUNCTION sf_append_with_colon_and_comma(s text, v1 text, v2 text)
RETURNS TEXT AS $$
BEGIN
IF s IS NOT NULL THEN
RETURN s || ', ' || v1 || ':' || v2
ELSE
RETURN v1 || ':' || v2
END IF;
END
$$ LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION sf_finalize_with_colon_and_comma(s text)
RETURNS TEXT AS $$
BEGIN
RETURN COALESCE(s, '')
END
$$ LANGUAGE plpgsql;
CREATE OR REPLACE AGGREGATE sf_concatenate_code_and_name(VARCHAR, VARCHAR)
(
sfunc = sf_append_append_with_colon_and_comma,
stype = text,
finalfunc = sf_finalize_code_and_name
)