我有一个包含字符变量列和此列具有json的数据库表。 我需要编写一个查询,将这个json解析成单独的列。
我在这里找到了 json_each 函数,但是我不知道如何使用它。
我在这里找到了 json_each 函数,但是我不知道如何使用它。
data::jsonb->'foo'
将会稍微更加高效(对于json
类型,每次访问元素时实际上会重新解析)。 - Dmitridata::jsonb
。只有在将其包装在子查询中并在外部查询中多次引用转换后的结果时,才能获得好处。 - Craig Ringertrim('"' FROM (data::json->'name')::text)
。 - Viktor Reinok太棒了,谢谢分享。我发现你可以更深入地探索,比如:
SELECT
id,
data::json->'name' as name,
data::json->'author' ->> 'last_name' as author
FROM books;