On Tue, 1 Aug 2023 at 06:39, Andy Fan <zhihui.fan1...@gmail.com> wrote: > > Hi: > > Currently if we want to extract a numeric field in jsonb, we need to use > the following expression: cast (a->>'a' as numeric). It will turn a numeric > to text first and then turn the text to numeric again.
Why wouldn't you use cast(a->'a' as numeric), or ((a->'a')::numeric)? We have a cast from jsonb to numeric (jsonb_numeric in jsonb.c) that does not require this additional (de)serialization through text. Kind regards, Matthias van de Meent Neon (https://neon.tech)