下記テーブルを例にして記載します。
create table sampletable (
name text,
birthday date
);
下記に様にすると取れそうですがエラーが発生します。
SELECT name, birthday,
ENCODE( CONCAT( '{"name":"', name, '","birthday":"', CAST(birthday AS varchar), '"}'), 'base64') AS jsondata
FROM sampletable;
// 下記エラーが発生する
function encode(text, unknown) does not exist
バイナリ型に変換する必要があり、「::bytea」を付ける必要があります。
SELECT name, birthday,
ENCODE( CONCAT( '{"name":"', name, '","birthday":"', CAST(birthday AS varchar), '"}')::bytea , 'base64') AS jsondata
FROM sampletable;
これで勝つる!