利用pandas和numpy将mssql数据库表中的记录转为json

利用pandas和numpy将mssql数据库表中的记录转为json,只需要几条语句就能完美实现,十分强悍。
需求:
数据表:
在这里插入图片描述
json格式:
[{‘Id’: 1,
‘WaterCo’: ‘NXHSB’,
‘MeterFactory’: ‘JD’,
‘MeterSeal’: ‘31007096’,
‘ConCentratorNo’: None,
‘Open_Close’: 1,
‘CreateTime’: Timestamp(‘2020-06-26 08:56:38’),
‘SendTime’: NaT,
‘Success’: ‘Y’},
{‘Id’: 4,
‘WaterCo’: ‘NXHSB’,
‘MeterFactory’: ‘JD’,
‘MeterSeal’: ‘31007096’,
‘ConCentratorNo’: None,
‘Open_Close’: 0,
‘CreateTime’: Timestamp(‘2020-06-26 08:58:59’),
‘SendTime’: NaT,
‘Success’: ‘Y’},
{‘Id’: 5,
‘WaterCo’: ‘NXHSB’,
‘MeterFactory’: ‘JD’,
‘MeterSeal’: ‘31007092’,
‘ConCentratorNo’: None,
‘Open_Close’: 1,
‘CreateTime’: Timestamp(‘2020-07-17 16:43:18’),
‘SendTime’: NaT,
‘Success’: ‘Y’}]

要实现上述数据表中记录转换为json格式,代码如下:

#!/usr/bin/env python
# coding=utf-8
import pandas as pd
import numpy as np
import pyodbc

host = "tcp:mssql的IP"
user = "mssql的帐户"
passwd = "mssql的密码"
db = "mssql的数据库名称"
conn = pyodbc.connect(
      "DRIVER={ODBC Driver 17 for SQL Server};SERVER=" + host +
      ";DATABASE=" + db + ";UID=" + user + ";PWD=" + passwd)
data = pd.read_sql("select * from [mssql的表名]", conn)

results = list()
for i in np.array(data):
  a = {x: y for x, y in zip(data.columns, i)}
  results.append(a)

运行程序,变量results得到的结果是列表,使用json.dumps()转换后即可得到json对象。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值