=?ISO-8859-1?Q?L=E1szl=F3_Lajos_J=E1nszky?= <laszlo(dot)janszky(at)gmail(dot)com> writes:
> The following query returns nothing, but it should return 1.
> *SELECT 1 FROM NOT(ARRAY[1] <@ NULL**); *
I assume you meant SELECT 1 WHERE NOT(ARRAY[1] <@ NULL) ?
Because what you wrote doesn't parse.
This is not a bug. "ARRAY[1] <@ NULL" yields NULL. NOT (NULL) is still
NULL. WHERE treats a NULL result as FALSE.
It might help you to consider that NULL means "unknown". It does not
mean "empty array".
regards, tom lane