我正在开发一个由服务器 (mySQL) 组成的学校项目。为了从表中获取信息,我使用以下代码:
k = db.cursor()
k.execute("SELECT location FROM api_server.Measurement WHERE userid = 18")
rows = k.fetchall()
for index in rows[0]:
print(index)
此代码的输出为:b'\x00\x00\x00\x00\x01\x01\x00\x00\x00\x0c\xbd\xb4\x97#Z\x14@\x81\xae “HJ\x0eJ@”
通过 MySQL Workbench 查看代码时,我得到一些如下所示的二进制值:binary values 打开选项卡查看文本时会弹出此值:POINT (5.0881077 52.1116621) 我也想要 python 中的这个值。有人知道如何做到这一点吗?
最佳答案
我相信这只是一个blob数据,你可以使用
SELECT CONVERT(location USING utf8) FROM api_server.Measurement WHERE userid = 18
如果是点(几何类型),可以使用:
SELECT ST_AsText(location USING utf8) FROM api_server.Measurement WHERE userid = 18
关于mysql - 将 POINT sql 数据转换为 python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49669380/