You need to enable JavaScript to run this app.
导航
主键过滤
最近更新时间:2025.03.24 13:55:30首次发布时间:2025.03.24 13:55:30
我的收藏
有用
有用
无用
无用

您可以通过主键过滤能力在向量数据库中通过主键限定结果范围。

说明

主键过滤是通用检索能力,您在检索的相关接口中传入primary_key_in或primary_key_not_in参数来启用标量过滤能力。

参数说明

参数

类型

是否必选

默认值

参数说明

primary_key_in

list或list

None

设定此参数,会限定仅在主键列表范围内进行检索。
传入空列表和不传此参数效果相同。

primary_key_not_in

list或list

None

设定此参数,将把主键列表范围内的数据从检索结果中排除 。

示例
# 获取指定索引,程序初始化时调用即可,无需重复调用
index = vikingdb_service.get_index("example_text", "example_index_text")
datas = index.search(order=None, limit=5, primary_key_in=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], primary_key_not_in=[1])
    for data in datas:
        print(data.id, data.fields, data.score)
    print("========================")

datas = index.search_by_id(id=2, limit=5, output_fields=["f_id", 'f_vector'],  primary_key_in=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], primary_key_not_in=[1])
    for data in datas:
        print(data.id, data.fields, data.score)
    print("========================")

datas = index.search_by_vector(vector=[0,0,0,0], limit=10, primary_key_in=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], primary_key_not_in=[5, 6, 7, 8, 9, 10])
    for data in datas:
        print(data.id, data.fields, data.score)
    print("========================")