Re: get the array content whis the select clause

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Jun 5, 12:13 pm, kristo.k...@xxxxxxxxx (Kristo Kaiv) wrote:
> i guess this what you meant:
> (not a nice solution though) writing a function that returns the set
> would be a better idea
>
> create table testintarr (iarr int[]);
> insert into testintarr values ('5,6,7,8');
>
> test=# select iarr[idx] from (select iarr, generate_series(array_lower
> (iarr,1), array_upper(iarr,1)) as idx from testintarr) asdf;
> iarr


Function would look like this:

CREATE OR REPLACE FUNCTION f_intarr_to_set(integer[])
  RETURNS SETOF integer AS
$BODY$
BEGIN
FOR i IN array_lower($1,1) .. array_upper($1,1) LOOP
   RETURN NEXT $1[i];
END LOOP;
END;
$BODY$
  LANGUAGE 'plpgsql';

SELECT * FROM f_intarr_to_set('{1,3,5,7,9,321}');

But I think I like Kristo´s query even better. :)


Regards
Erwin



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux