如何为ChromaDB的collection.query设置日期范围查询条件?
ChromaDB collection.query 日期范围查询实现方法
ChromaDB 的 where 参数支持使用 MongoDB 风格的比较操作符实现范围查询,针对你的需求,用 $gte(大于等于)和 $lte(小于等于)就能限定日期区间。
首先要把今日日期转换成和元数据中一致的日-月-年格式,再构造查询条件:
from datetime import datetime # 格式化今日日期为目标格式 today = datetime.today().strftime("%d-%m-%Y") results = collection.query( query_texts=user_info, n_results=10, where={"date": {"$gte": "20-04-2023", "$lte": today}} ) print(results['metadatas'], results['distances'])
注意事项
- 务必保证查询日期格式和存入 ChromaDB 时
date字段的格式完全一致,否则会出现匹配失败。 - 如果元数据中
date存储的是时间戳或其他格式,需要同步调整查询条件的格式,确保类型匹配。
内容的提问来源于stack exchange,提问作者Kas
相关产品推荐
相关产品推荐

