首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Postgres解包元素

Postgres解包元素
EN

Stack Overflow用户
提问于 2021-12-01 15:59:49
回答 1查看 68关注 0票数 0

我在一个表中有一个字段,其中包含从lora设备发送的打包数据。这个设备把它包装成这样:

代码语言:javascript
复制
# LoRa payload format
# (2 Bytes for device ID, 8 float numbers: temp humid ph1 ph2 ph3 volt1 volt2 volt3)
LORA_PKG_FORMAT = "!Hffffffff"
msg = struct.pack(LORA_PKG_FORMAT, config.DEVICE_ID, temp_read, humid_read, ph1_read, ph2_read, ph3_read, volt1_read, volt2_read, volt3_read)

接收端的python应用程序能够像这样解码和解压缩它:

代码语言:javascript
复制
dev_msg = base64.b64decode(rx_pkt["data"])
focus_data = struct.unpack(config.LORA_PKG_FORMAT, dev_msg)

postgres表中的打包数据如下:

代码语言:javascript
复制
\x000141a4000042a0e3884147fd0f41477c3b4147a5303e0895213e0895213e089521

尽管从python应用程序解压缩的值是:

代码语言:javascript
复制
logging.info('Decoded payload: ' + str(focus_data))

解码有效载荷:(1,20.5,80.44439697265625,12.499281883239746,12.467829704284668,12.477828979492188,0.13338138163089752,0.13338138163089752,0.13338138163089752)

如果使用postgres查询,如何实现与struct.unpack函数相同的结果?我需要提取每一个元素来创建一个关于地堑的面板。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-01 20:26:11

编写一个PL/Python中的数据库功能并在一个SQL查询中调用它。

数据库函数在数据库中运行,可以在SQL中使用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70187401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档