Dette skyldes, at operatoren ->>
henter JSON-array-element som tekst. Du skal bruge en cast for at konvertere resultatet tilbage til JSON.
Du kan eliminere denne overflødige cast ved at bruge operatoren ->
:
select person->'dogs'->0->'breed' from people where id = 77;