将 POINT sql 数据转换为 python

Converting POINT sql data to python

我正在处理一个包含服务器 (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