Gerardo Herzig wrote:
> Hi all: What a want to do is something like this:
> suppose i have this record
>
> aa--bb--cc
>
> I guess if im able to do some sql/plsql procedure to get something like it
> aa
> bb
> cc
> (3 records, rigth?)
>
> Thanks a lot
> Gerardo
>
dev=#select split_to_rows('aa--bb--cc','--');
split_to_rows
---------------
aa
bb
cc
(3 rows)
This function was written by David Fetter,
http://archives.postgresql.org/pgsql-general/2005-12/msg00080.php
CREATE OR REPLACE FUNCTION split_to_rows(TEXT,TEXT) RETURNS SETOF TEXT
AS $$
SELECT (string_to_array($1, $2))[s.i]
FROM generate_series(
1,
array_upper(string_to_array($1, $2), 1)
) AS s(i);
$$ language sql strict;