我对Elastic search不是很了解。我们可以比较两种类型的价格,同时从弹性服务器获取记录。下面是示例
"hits": [
{
"_index": "magento2_default_catalog_product_20210531_051304",
"_type": "_doc",
"_id": "57",
"_score": 1.0,
"_source": {
"entity_id": "57",
"visibility": "4",
"price": [
{
"price": 1.0,
"original_price": 1.0,
"is_discount": false,
"customer_group_id": 0,
"tax_class_id": 2,
"final_price": 0.0,
"min_price": 1.0,
"max_price": 1.0
},
{
"price": 1.0,
"original_price": 1.0,
"is_discount": false,
"customer_group_id": 1,
"tax_class_id": 2,
"final_price": 0.0,
"min_price": 1.0,
"max_price": 1.0
},
{
"price": 1.0,
"original_price": 1.0,
"is_discount": false,
"customer_group_id": 2,
"tax_class_id": 2,
"final_price": 0.0,
"min_price": 1.0,
"max_price": 1.0
},
{
"price": 1.0,
"original_price": 1.0,
"is_discount": false,
"customer_group_id": 3,
"tax_class_id": 2,
"final_price": 0.0,
"min_price": 1.0,
"max_price": 1.0
}
]
"stock": {
"is_in_stock": true,
"qty": 0
}
}
},
{
"_index": "magento2_default_catalog_product_20210531_051304",
"_type": "_doc",
"_id": "91",
"_score": 1.0,
"_source": {
"entity_id": "91",
"visibility": "4",
"price": [
{
"price": 1.0,
"original_price": 1.0,
"is_discount": false,
"customer_group_id": 0,
"tax_class_id": 2,
"final_price": 0.0,
"min_price": 1.0,
"max_price": 1.0
},
{
"price": 1.0,
"original_price": 1.0,
"is_discount": false,
"customer_group_id": 1,
"tax_class_id": 2,
"final_price": 0.0,
"min_price": 1.0,
"max_price": 1.0
},
{
"price": 1.0,
"original_price": 1.0,
"is_discount": false,
"customer_group_id": 2,
"tax_class_id": 2,
"final_price": 0.0,
"min_price": 1.0,
"max_price": 1.0
},
{
"price": 1.0,
"original_price": 1.0,
"is_discount": false,
"customer_group_id": 3,
"tax_class_id": 2,
"final_price": 0.0,
"min_price": 1.0,
"max_price": 1.0
}
],
"stock": {
"is_in_stock": true,
"qty": 0
}
}
},
]我有吨的记录,现在我需要那些记录,其中有final_price小于价格。因为价格是一个数组类型,所以我有客户组id和税类id,所以我需要将它与各自的索引进行比较。假设我的客户组id为0,税类id为2,因此它应该从价格的第一个索引或匹配索引比较价格和最终价格。
如果有人能帮上忙,我将不胜感激。
https://stackoverflow.com/questions/67787112
复制相似问题