Re: BUG #18356: Casting values from jsonb_each_text does not respect WHERE filter with sub select

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: ewherrmann(at)gmail(dot)com
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #18356: Casting values from jsonb_each_text does not respect WHERE filter with sub select
Date: 2024-02-21 20:17:58
Message-ID: 123109.1708546678@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

PG Bug reporting form <noreply(at)postgresql(dot)org> writes:
> - Prior to v16, this statement would work for casting values of a k/v jsonb
> pair to an integer:
> SELECT id, mytdata.key, mytdata.value::integer
> FROM my_table as myt,
> jsonb_each_text(myt.data) as mytdata
> WHERE mytdata.key IN ( SELECT key from week_key_table
> )

> - Where week_key_table stores keys such as "week01", "week02", and
> "week03".
> - And where the jsonb has some keys with alphanumeric values and some keys
> with numeric values, such as: { "key_figure": "Volume", "week01": "0",
> "week02": "0", "week03": "0"}

> However as of v16, this same statement causes the error: 'invalid input
> syntax for type double precision: "Volume"'.

Could you provide an actually self-contained example? People
have other things to do than guess about the data and table details
needed to reproduce this.

regards, tom lane

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Laurenz Albe 2024-02-21 20:23:53 Re: BUG #18356: Casting values from jsonb_each_text does not respect WHERE filter with sub select
Previous Message Heikki Linnakangas 2024-02-21 19:19:49 Re: DSA_ALLOC_NO_OOM doesn't work