2016-12-06 12 views
-2

다음 SQL 쿼리를 Elasticsearch 검색 쿼리로 변환하고 싶습니다. 누구든지 이걸 도와 주실 수 있나요, 고마워요. 당신이 IN를 사용하는 경우'IN'연산자를 사용하여 SQL select 쿼리를 elastic searcharch 검색어로 변환하십시오.

Select sum(total_apples_count) 
from basket where (apple_color in (
    select apple_color from apple_details where type = "O") || 
    apple_texture in (
     select apple_texture from apple_details where type = "O" 
    ) 
); 
+0

제안 사미 주셔서 감사합니다. 나는 stackoverflow에 대한 질문을 할 때 멍청한 놈이야. – Murdoc230

답변

0

당신은 단순히 같은 :를 사용하여 추가 할 수 있습니다 :

apple_color :() 

SO 당신을 도울 수 있습니다.

당신의 ES 쿼리 내에서 SUM을 사용하려면, 당신은 당신의 요청 본문 내에서 이런 일을 할 수있는 :

"aggs":{ 
      "total":{ 
       "sum":{ 
        "script":"doc['total_apples_count'].value" 
       } 
      } 
     } 

Refsum의 집계.

+0

elasticsearch의 경우 테이블 제목 (total_apples_count, apple_details)을 레코드 유형으로 간주하고 각 테이블 또는 데이터 유형에 무한대의 레코드 수가 있습니다. 샘플은 다음과 같이 정적 값을 참조로 사용합니다. (401 403)하지만 제 경우에는 1,000,000 개가 넘는 레코드를 참조로 사용합니다. – Murdoc230