Craig Ringer <craig(at)postnewspapers(dot)com(dot)au> writes:
> The following query should return 2 records, but returns zero instead:
> test=> select x, regexp_matches(x::text, 'm')
> test-> FROM generate_series(1,2) AS x;
> x | regexp_matches
> ---+----------------
> (0 rows)
No, that's correct. The SRF returns an empty set, so there are no
output records. The behavior you seem to be imagining would make it
impossible to distinguish empty set from a single row containing NULL.
regards, tom lane