如何使用postgresql命令从嵌套字典中提取值?

时间:2018-04-05 06:40:32

标签: python postgresql dictionary postgresql-9.5

我正在使用postgresql从我的数据库中提取一些数据。我点击的一个查询返回一个嵌套字典给我指定的特定日期。 例如:

query: select user_position_details from user_detail where last_login >= '2018-03-01';

此查询返回以下结果:

 "{\"user_position\": {\"LOGIN_s\": \"something\", \"X_SLS_AREA_s\": \"data\"}}"
"{\"user_position\": {\"LOGIN_so\": \"login_data\", \"X_SLS_AREA_s\": \"data\"}}"

我只希望这个嵌套字典中的字段LOGIN_s。 有什么办法可以使用特定的查询吗? 我搜索过这个,但找不到任何有用的东西。

感谢任何帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

您正在获取json字符串输出。使用json module将其转换为JSON并使用密钥访问所需的值。

<强>实施例

import json
s = ["{\"user_position\": {\"LOGIN_so\": \"something\", \"X_SLS_AREA_s\": \"data\"}}",
"{\"user_position\": {\"LOGIN_so\": \"login_data\", \"X_SLS_AREA_s\": \"data\"}}"]

for i in s:
    v = json.loads(i)
    print(v["user_position"].get(u'LOGIN_so'))