psycopg2 select result与其他数组嵌套

2024-09-30 20:27:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用“psycopg2”从postgres获取JSON行。记录的值类似于[[{….},{…},{…}]]。为了得到正确的JSON结果,即.[{….},{…},{…}]我必须使用records1。不知道为什么会这样。在

import psycopg2
import sys
import json

conn_string = "'host='localhost' dbname='postgres' user='postgres' password='password123'" 
con=psycopg2.connect(conn_string)
cur = con.cursor()
cur.execute("select json_agg(art) from (select a.*, (select json_agg(b) from (select * from pfstklist where pfportfolioid = a.pfportfolioid ) as b) as pfstklist, (select json_agg(c) from (select * from pfmflist where pfportfolioid = a.pfportfolioid ) as c) as pfmflist from pfmaindetail as a) art")
records = cur.fetchall()
print(records)     #This gives result [[{....},{...},{...}]]
records1=records[0]    
print(records1)   #This gives expected result [{....},{...},{...}]

Tags: fromimportjsonstringaspostgresconnselect