Chroma 教程

$in / $nin 列表包含/不包含

🎉摘要:本文详解Chroma中$in与$nin操作符的使用方法,说明如何按数组条件查询字段值是否包含或不包含在指定列表中,并提供Python代码示例与运行结果。

在 Chroma 中,$in / $nin 用来判断指定的字段在数组参数中包含/不包含,强调的是查询条件是数组,数据库中字段的值是否包含在条件数组中。

类似 SQL 语句中的 in 和 not in 语法。例如:

col.get(where={"year": {"$in": [2020, 2024]}})

查询 year 是 2020 或 2024 年的记录。

示例:

print("\n--- 属于 2020 和 2024 年 ---")
show(col.get(where={"year": {"$in": [2020, 2024]}}))

print("\n--- 不属于 2020 和 2024 年 ---")
show(col.get(where={"year": {"$nin": [2020, 2024]}}))

运行示例,输出结果:

--- year 大于 2022 ---
id=r1, document=退款流程 refund, metadata={'cat': '售后', 'tags': ['a', 'b'], 'year': 2020, 'is_public': True, 'score': 0.9}
id=r3, document=物流 logistics, metadata={'cat': '物流', 'is_public': False, 'score': 0.7, 'year': 2024, 'tags': ['a', 'd']}
id=r4, document=退货政策, metadata={'year': 2024, 'is_public': False, 'cat': '售后', 'score': 0.3, 'tags': ['b', 'd']}

--- year 大于 2022 ---
id=r2, document=发票 invoice, metadata={'cat': '财务', 'score': 0.5, 'is_public': False, 'tags': ['c'], 'year': 2022}

注意:$in 的列表元素类型要跟字段类型一致。

  

说说我的看法
全部评论()
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
其他应用
公众号