总和和计数的 psycopg2 postgres sql 请求返回不尊重 json.dump 的格式

问题描述

我有以下查询:

import psycopg2
import simplejson as json


payload = {
   "type": type,"creators": None,"type_count": None,"total_monitary_action_count": None
  }

cur.execute('''
      SELECT SUM(currentmonitaryactioncount) as totalmonitaryactioncount,COUNT(*) as totalnumberofcreators
      FROM users_contentcreatorusers
      WHERE approvedcreator = true AND ''' + str(type) + ''' = true
      ''')

然后

 record = cur.fetchall()
 record = json.dumps(record)
 print('here is the record dump thing')
 print(record)
 payload["total_monitary_action_count"] = record[0]
 payload["type_count"] = record[1]

打印出来

here is the record dump thing
[[102923243,2043]]

这是我的结果

payload["total_monitary_action_count"] = record[0]
payload["type_count"] = record[1]

'type_count': '[','total_monitary_action_count': '['}

现在我看到了双 [] 并且我尝试了 record[0][0] 没有任何积极效果。

我做错了什么。

解决方法

由于结果是一个带有列表的列表,您应该将数据检索为

payload["total_monitary_action_count"] = record[0][0]
payload["type_count"] = record[0][1]

并删除以下将序列化结果的行,在这种情况下,我不明白为什么需要它。

record = json.dumps(record)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...