我正在嘗試使用 jsonb_to_recordset() 函式顯示 jsonb 列的內容
SELECT id, city FROM jsonb_to_recordset("sometable".data) AS t(id int4, city varchar)
但是得到以下錯誤
SQL Error [42P01]: ERROR: missing FROM-clause entry for table "sometable"
當我手動替換這些值時,該函式本身會起作用。想不通是什么問題。
uj5u.com熱心網友回復:
把它寫成FROM...JOIN:
-- inner join
SELECT t.id, t.city
FROM sometable
CROSS JOIN LATERAL jsonb_to_recordset(sometable.data) AS t(id int4, city varchar)
-- outer join, include rows where jsonb is null
SELECT t.id, t.city
FROM sometable
LEFT JOIN LATERAL jsonb_to_recordset(sometable.data) AS t(id int4, city varchar) ON true
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/370197.html
上一篇:加載資料時出現完整性約束錯誤
下一篇:從資料庫中獲取資料并重新寫入
