Ternyata menjadi masalah indeks. Perilaku NULLS dari kueri tidak koheren dengan indeks.
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
solusi
Jika Anda menentukan NULLS dalam indeks atau kueri Anda, pastikan keduanya koheren satu sama lain.
yaitu:ASC NULLS LAST
koheren dengan ASC NULLS LAST
atau DESC NULLS FIRST
.
NULLS TERAKHIR
CREATE INDEX message_created_at_idx on message (created_at DESC NULLS LAST);
... ORDER BY messsage.created_at DESC NULLS LAST;
NULLS PERTAMA
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;
BUKAN NULL
Jika kolom Anda BUKAN NULL, jangan repot-repot dengan NULLS.
CREATE INDEX message_created_at_idx on message (created_at DESC);
... ORDER BY messsage.created_at DESC;