У меня есть один условный запрос в MySQL я хочу, чтобы преобразовать его в elasticsearch запроса:Условный запрос в elasticsearch
Query:
У меня есть список продуктов страница с поиском цены рейнджера. Если пользователь использует этот поиск, я хочу проверить, продается ли продукт, тогда он должен рассмотреть продажную цену еще продажной цены. (проверка продажа: я проверить продажу по текущей дате между sale_start и датой sale_end.)
MySql запросов:
SELECT *
FROM `product_sku`
WHERE
((sale_start < '2016-05-12 15:23:53' AND sale_end > '2016-05-12 15:23:53' AND sale_price between 600 AND 1800)
OR (sale_end < '2016-05-12 15:23:53' AND selling_price between 600 AND 1800)
)
Elasticsearch Запрос:
$params = [
'index' => 'index',
'type' => 'product-list',
'body' => [
"query" => [
"filtered" => [
"query" => [
"match_all" => [],
],
'query' => $query,
"filter" => [
"nested" => [
"path" => "default_product_low_price_with_seller",
"filter" => [
"bool" => [
"should" => [
[
"range" => [
"default_product_low_price_with_seller.sale_price" => [
"gte" => $_GET['filter']['price']['from'],
"lte" => $_GET['filter']['price']['to'],
],
],
],
[
"range" => [
"default_product_low_price_with_seller.sale_end" => [
"gte" => $now,
],
],
],
[
"range" => [
"default_product_low_price_with_seller.sale_start" => [
"lte" => $now,
],
],
],
],
],
],
"filter" => [
"bool" => [
"should" => [
[
"range" => [
"default_product_low_price_with_seller.selling_price" => [
"gte" => $_GET['filter']['price']['from'],
"lte" => $_GET['filter']['price']['to'],
],
],
],
[
"range" => [
"default_product_low_price_with_seller.sale_end" => [
"lte" => $now,
],
],
],
[
"range" => [
"default_product_low_price_with_seller.sale_start" => [
"gte" => $now,
],
],
],
],
],
],
],
],
],
],
"aggs" => [
"brand_name" => ["terms" => ["field" => "brand_name"]],
"category_with_in_title" => [
"nested" => [
"path" => "category_with_in_title.parent_cat",
],
"aggs" => [
"category_with_in_title.title" => ["terms" => ["field" => "category_with_in_title.parent_cat.title"]],
],
],
],
],
];
Где мой запрос mysql? –
Я обновил свой вопрос .... –