Re: count_nulls(VARIADIC "any") - Mailing list pgsql-hackers

From Pavel Stehule
Subject Re: count_nulls(VARIADIC "any")
Date
Msg-id CAFj8pRCHT9XX1Ab=3wZwqv0uaFT5eorCjtL5Rc906ZoBs_TBdw@mail.gmail.com
Whole thread Raw
In response to Re: count_nulls(VARIADIC "any")  (Pavel Stehule <pavel.stehule@gmail.com>)
Responses Re: count_nulls(VARIADIC "any")  (Jim Nasby <Jim.Nasby@BlueTreble.com>)
List pgsql-hackers


2016-01-03 21:37 GMT+01:00 Pavel Stehule <pavel.stehule@gmail.com>:
Hi


2015-08-12 19:18 GMT+02:00 Marko Tiikkaja <marko@joh.to>:
Hi,

I'd like to suggest $SUBJECT for inclusion in Postgres 9.6.  I'm sure everyone would've found it useful at some point in their lives, and the fact that it can't be properly implemented in any language other than C I think speaks for the fact that we as a project should provide it.

A quick and dirty proof of concept (patch attached):

=# select count_nulls(null::int, null::text, 17, 'bar');
 count_nulls
-------------
           2
(1 row)

Its natural habitat would be CHECK constraints, e.g:

  CHECK (count_nulls(a,b,c) IN (0, 3))

Will finish this up for the next CF, unless someone wants to tell me how stupid this idea is before that.


.m

I am sending updated version - support num_nulls and num_notnulls

and patch
 

Regards

Pavel

Attachment

pgsql-hackers by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: count_nulls(VARIADIC "any")
Next
From: Andreas Seltenreich
Date:
Subject: Re: pg_upgrade in 9.5 broken for adminpack