demostración paso a paso:db<>fiddle
SELECT
elem.value ->> 'date' as thedate,
elem.value ->> 'note' as note
FROM t,
json_array_elements(data) elem -- 1
WHERE id = 4123
ORDER BY to_timestamp(elem ->> 'date', 'DD/MM/YYYY HH24:MI') DESC -- 2
LIMIT 1 -- 3
- Extrae todos los elementos de la matriz en una fila
- Leer cadena de fecha y hora de
date
campo, conviértalo en marca de tiempo y utilícelo para ordenar todos los elementos de la matriz con la marca de tiempo más reciente primero - Simplemente devuelve el primer elemento de la matriz (=el más reciente).