GEOPOS 查不到数据主因是 GEOADD 未成功:参数顺序错误(须经度在前)、成员名不一致、或 pipeline/事务中未等命令执行完;返回值为二维数组,含字符串型经纬度及 null,需显式转换且验证存在性。用 GEOPOS 读取门店坐标前,先确认它真在 Geo 集合里直接调 GEOPOS 却返回 nil 或空数组?大概率是门店名根本没成功加进 Geo 集合。Redis 的 Geo 命令不报错也不提示"不存在",只默默返回空------这是最常踩的坑。GEOADD 必须严格按 经度 纬度 成员名 顺序传参,反了会导致坐标错乱(比如把北京存成南美洲)成员名(如门店 ID)必须和后续 GEOPOS 查询时用的完全一致,大小写、空格、下划线都不能差用 EXISTS 检查 key 是否存在不够,得用 ZCARD 看集合里有没有元素:ZCARD store:geoGEOPOS 返回的数组结构怎么解析才不翻车它返回的是二维数组:每个门店对应一个子数组,子数组里是 经度, 纬度 字符串。别直接当浮点数用,也别假设一定有值。如果查询多个门店(GEOPOS store:geo shop_001 shop_002),结果是 \["116.48","39.92", null] 这种混合类型------第二个 null 表示 shop_002 不在集合中经度纬度都是字符串,需要显式转 float,否则做距离计算会出错(比如 Python 里 "116.48" + "39.92" 是拼接不是相加)精度默认是小数点后 7 位,够用但别误以为是高精度坐标;如果业务要求更高,得自己存原始 double 值到 Hash 里为什么 GEOPOS 查不到刚 GEOADD 的数据?检查事务和管道在 pipeline 或 transaction 里执行 GEOADD 后立刻 GEOPOS,可能查不到------命令没真正落地。 Trenz AI驱动的社交电商营销平台,专为TikTok Shop设计
相关推荐
fenglllle几秒前
chromadb emmbedding 向量检索Nturmoils2 分钟前
订单查询丢数据,查了半天原来是 WHERE 惹的祸cui_ruicheng4 分钟前
Python从入门到实战(六):非序列容器ATA888811 分钟前
数据库管理工具的数据安全机制对比:权限管控与审计麦聪聊数据32 分钟前
业务自助取数(下):安全可控前提下,实现取数效率百倍提升飞猪~34 分钟前
Langchain python版本 LLM 重要函数invoke,ainvoke,stream,astream,batch,abatch2501_9157167241 分钟前
Repository-学习指南_小白版snpgroupcn1 小时前
SAP实施风险管控注意事项:四大风险域与防范策略沙蒿同学1 小时前
当古诗词遇上 AI:从 38 万句诗词中取一个好名字cyforkk1 小时前
MySQL锁机制详解:从乐观锁到悲观锁