jsonb: unwrapping text

Поиск
Список
Период
Сортировка
От
Тема jsonb: unwrapping text
Дата
Msg-id 20211027185807.GA31130@tuxteam.de
обсуждение исходный текст
Ответы Re: jsonb: unwrapping text
Список pgsql-general
Hi,

I'm trying to extract text from a jsonb 'string'. Simply casting
gives me the string wrapped in quotes:

  foo=# select '"foo"'::jsonb::text;
   text
  -------
   "foo"
  (1 row)

This, of course, makes kind of sense, since it /is/ the JSON's
textual representation.

What is the canonical way to get at the string's content itself?

I've found out that one can treat a string singleton as if it
were an array:

  foo=# select '"foo"'::jsonb ->> 0;
   ?column?
  ----------
   foo
  (1 row)

which conveniently returns the right type. My question: can I rely
on that, or am I missing a much more obvious option?

(I try to stay compatible down to PostgreSQL 11, 9 when possible.
Conservative customers and that).

Thanks for any insights, cheers
-- tomás

Вложения

В списке pgsql-general по дате отправления:

Предыдущее
От: SQL Padawan
Дата:
Сообщение: Re: Strange sequences - how to construct?
Следующее
От: Louise Grandjonc
Дата:
Сообщение: Segmentation fault in volatile c function