BUG #19401: Inconsistent predicate evaluation with derived table vs direct query involving NULL

Поиск
Список
Период
Сортировка
От PG Bug reporting form
Тема BUG #19401: Inconsistent predicate evaluation with derived table vs direct query involving NULL
Дата
Msg-id 19401-c9040563b011f44b@postgresql.org
обсуждение исходный текст
Ответы Re: BUG #19401: Inconsistent predicate evaluation with derived table vs direct query involving NULL
Список pgsql-bugs
The following bug has been logged on the website:

Bug reference:      19401
Logged by:          Ce Lyu
Email address:      2530254482@qq.com
PostgreSQL version: 18.1
Operating system:   Ubuntu
Description:

Dear PostgreSQL developers,

I would like to report a behavior that appears to be incorrect and
inconsistent in PostgreSQL when the same predicate is evaluated in (1) a
derived table and (2) a direct query.

The two queries are logically equivalent, but they return different
cardinalities.

Environment

PostgreSQL version:
PostgreSQL 18.1 (Debian 18.1-1.pgdg13+2) on x86_64-pc-linux-gnu, compiled by
gcc (Debian 14.2.0-19) 14.2.0, 64-bit

Minimal Reproduction

CREATE TABLE t0 (c0 TEXT);
INSERT INTO t0 (c0) VALUES ('4');
-- result: length 0;
SELECT ref0 FROM (SELECT (any_value(c0)) AS ref0, ((('j' = NULL) <= (NULL =
NULL))) AS ref1 FROM t0) AS s WHERE ref1;
-- result: length 1; (NULL)
SELECT (any_value(c0)) FROM t0 WHERE (('j' = NULL) <= (NULL = NULL));





В списке pgsql-bugs по дате отправления: