On 10/26/05 8:38 AM, "Mario Splivalo" <[EMAIL PROTECTED]> wrote:

> Consider this function:
> 
> CREATE OR REPLACE FUNCTION php_get_subfield_data_repeating(int4,
> "varchar")
> RETURNS SETOF "varchar" AS
> $BODY$
> DECLARE
> aRecordID ALIAS FOR $1;
> aSubFieldId ALIAS FOR $2;
> 
> returnValue record;
> subFieldNumber char(3);
> subFieldLetter char(1);
> 
> BEGIN
> subFieldNumber = substr(aSubFieldId, 1, 3);
> subFieldLetter = substr(aSubFieldId, 4);
> 
> FOR returnValue IN SELECT "subfieldValue"::varchar
> FROM "records_sub"
> WHERE "fieldTag" = subFieldNumber AND "subfieldTag" = subFieldLetter
> AND "recordId" = aRecordId
> LOOP
> RETURN NEXT returnValue;
> END LOOP;
> 
> RETURN;
> END
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE;
> 
> 
> 
> Now, when I do this:
> 
> biblio3=# select * from php_get_subfield_data_repeating(1,'606a');
> php_get_subfield_data_repeating1
> ----------------------------------
> (Anđeli)
> (ofsajd)
> (2 rows)

Does:

select * from php_get_subfield_data_repeating(1,'606a') as s(a)

do what you want (single column)?


---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

Reply via email to