sách gpt4 ai đã đi

elasticsearch - 如何添加到不同的字段值并将其存储在 Elasticsearch python中的另一个字段中( Elasticsearch 字段操作)

In lại 作者:行者123 更新时间:2023-12-02 23:58:07 31 4
mua khóa gpt4 Nike

我写了这个 flex 搜索查询:

es.search(index=['ind1'],doc_type=['doc'])

我得到以下结果:
{'_shards': {'failed': 0, 'skipped': 0, 'successful': 5, 'total': 5},
'hits': {'hits': [{'_id': '1327',
'_index': 'ind1',
'_score': 1.0,
'_source': {'val1': 1,
'val2': None,
'value1': 1327,
'value2': 1531,
'new_values': {'nv1': 1,
'nv2': 0},
{'_id': '1349',
'_index': 'ind1',
'_score': 1.0,
'_source': {'val1': 2,
'val2': 3,
'value1': 1328,
'value2': 1539,
'new_values': {'nv1': 1,
'nv2': 3}},.......

我想要所有添加的val1,value1和nv1,并将其存储在另一个字段中。我们称其为total。我希望结果将是这样的:
{'_shards': {'failed': 0, 'skipped': 0, 'successful': 5, 'total': 5},
'hits': {'hits': [{'_id': '1327',
'_index': 'ind1',
'_score': 1.0,
'_source': {'val1': 1,
'val2': None,
'value1': 1327,
'value2': 1531,
'new_values': {'nv1': 1,
'nv2': 0},
'total1': 1329},
{'_id': '1349',
'_index': 'ind1',
'_score': 1.0,
'_source': {'val1': 2,
'val2': 3,
'value1': 1328,
'value2': 1539,
'new_values': {'nv1': 1,
'nv2': 3},
'total': 1331},.......

1 Câu trả lời

您可以做的是使用脚本字段来即时计算该值:

 es.search(index=['ind1'],doc_type=['doc'], body={
'_source': true,
'script_fields': {
'total': {
'script': {
'source': 'doc.val1 + doc.value1 + doc.new_values.nv1'
}
}
}
})

不过,最好的方法是在索引时预先计算该值,并将值存储在新的 tổng cộng字段中。

关于elasticsearch - 如何添加到不同的字段值并将其存储在 Elasticsearch python中的另一个字段中( Elasticsearch 字段操作),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51548052/

31 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com