Оказа се проблем с индекса. Поведението на NULLS на заявката не беше съгласувано с индекса.
CREATE INDEX message_created_at_idx on message (created_at DESC NULLS LAST);
... ORDER BY message.created_at DESC; -- defaults to NULLS FIRST when DESC
решения
Ако посочите NULLS във вашия индекс или заявка, уверете се, че те са съгласувани един с друг.
т.е.:ASC NULLS LAST
е съгласувано с ASC NULLS LAST
или DESC NULLS FIRST
.
ПОСЛЕДНИ НУЛИ
CREATE INDEX message_created_at_idx on message (created_at DESC NULLS LAST);
... ORDER BY messsage.created_at DESC NULLS LAST;
ПЪРВИ НУЛИ
CREATE INDEX message_created_at_idx on message (created_at DESC); -- defaults to NULLS FIRST when DESC
... ORDER BY messsage.created_at DESC -- defaults to NULLS FIRST when DESC;
НЕ NULL
Ако колоната ви НЕ е NULL, не се занимавайте с NULLS.
CREATE INDEX message_created_at_idx on message (created_at DESC);
... ORDER BY messsage.created_at DESC;