Hi, I noticed what i think is a weird behaviour with SRFs. When I use them in a SELECT clause, and the SRF returns no rows, the query returns no rows too, when I think it should return an a null column. I'm posting an example below:
test=> CREATE TABLE foo (cod SERIAL, bar TEXT); NOTICE: CREATE TABLE will create implicit sequence "foo_cod_seq" for "serial" column "foo.cod" CREATE TABLE test=> test=> INSERT INTO foo (bar) VALUES ('asdasd'); INSERT 60702758 1 test=> CREATE OR REPLACE FUNCTION srf_foo(INTEGER) test-> RETURNS setof foo test-> AS ' test'> SELECT * FROM foo WHERE cod = $1; test'> ' LANGUAGE 'SQL'; CREATE FUNCTION test=> test=> SELECT cod, (srf_foo(cod)).bar test-> FROM foo; cod | bar -----+-------- 1 | asdasd (1 record) test=> test=> SELECT cod, (srf_foo(50)).bar test-> FROM foo; cod | bar -----+----- (0 records) Thanks in advance, -- +---------------------------------------------------+ | Alvaro Nunes Melo Atua Sistemas de Informacao | | [EMAIL PROTECTED] www.atua.com.br | | UIN - 42722678 (54) 327-1044 | +---------------------------------------------------+ ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster