Dapat dilihat pada gambar dibawah ini. yaitu ketika ingin melakukan query suatu table dan menghasilkan result seperti pada gambar dibawah ini di postgre bisa menggunakan suatu alternatif cara yaitu menggunakan agregate.
Sebagai Contoh dibawah ini adalah fungsi untuk menggabungkan dua variable bertipe Text.
Sebagai Contoh dibawah ini adalah fungsi untuk menggabungkan dua variable bertipe Text.
CREATE OR REPLACE FUNCTION xx_text_accum(text, text) RETURNS text LANGUAGE SQL AS $$ SELECT $1||$2||', '; $$;
$1 merupakan text pertama yang kemudian di gabungkan dengan $2 atau text kedua secara recursive. kemudian tanda ', ' (coma) berfungsi sebagai delimiter.
Fungsi kedua xx_text_accum_last(text) yaitu fungsi yang digunakan untuk menghilangkan karakter coma pada text terakhir.
Fungsi kedua xx_text_accum_last(text) yaitu fungsi yang digunakan untuk menghilangkan karakter coma pada text terakhir.
CREATE OR REPLACE FUNCTION xx_text_accum_last(text) RETURNS text LANGUAGE SQL AS $$ select substr(trim($1), 0, length($1) - 1); $$;
Dibawah ini merupakan cara untuk membuat Agregate selain dari pada yang sudah exsisting di postgre seperti sum() average() count() dll.
CREATE AGGREGATE text_accum (text) ( sfunc = xx_text_accum, stype = text, initcond = '', FINALFUNC = xx_text_accum_last );
Dan untuk melihat hasilnya bisa menggunakan perintah (query) seperti di bawah ini
Select col1, text_accum(col2) from table_name group by col1;
Sekian langkah dari proses convert rows to column pada query database. terimakasih :)
0 komentar:
Post a Comment