

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# CASE\_OPERATION
<a name="recipe-actions.CASE_OPERATION"></a>

논리적 조건 CASE의 결과를 기반으로 새 열을 생성합니다. 사례 작업은 사례 조건을 거치며 첫 번째 조건이 충족되면 값을 반환합니다. 조건이 true이면 작업이 읽기를 중지하고 결과를 반환합니다. true인 조건이 없는 경우 기본값을 반환합니다.

**파라미터**
+ `valueExpression` - 조건.
+ `withExpressions` - 집계 결과에 대한 구성입니다.
+ `targetColumn` - 새로 생성된 열의 이름입니다.

**Example 예제**  
  

```
{
  "RecipeStep": {
    "Action": {
      "Operation": "CASE_OPERATION",
      "Parameters": {
        "valueExpression": "case when `column11` < `column.2` then 'result1' when `column2` < 'value2' then 'result2' else 'high' end",
        "targetColumn": "result.column"
      }
    }
  }
}
```

## 유효한 집계 함수
<a name="valid-aggregate-functions"></a>

아래 표에는 사례 작업에 사용할 수 있는 유효한 집계 함수가 모두 나와 있습니다.



- ** Numeric **
  - **조건:** Sum / **valueExpression:** `:sum.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "sum.column.1",<br />      "value": "sum(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 합계를 반환합니다. `column.1` 
  - **조건:** 평균 / **valueExpression:** `:mean.column.1` / **withExpressions:**  <pre>[<br />   {    <br />      "name": "mean.column.1",    <br />      "value": "avg(`column.1`)",    <br />      "type": "aggregate"  <br />   }<br />]</pre>  / **반환 값:** 의 평균을 반환합니다. `column.1` 
  - **조건:** 평균 절대 편차 / **valueExpression:** `:meanabsolutedeviation.column.1` / **withExpressions:**  <pre>[<br />   {    <br />      "name": "meanabsolutedeviation.column.1",<br />      "value": "mean_absolute_deviation(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 평균 절대 편차를 반환합니다. `column.1` 
  - **조건:** 중간 / **valueExpression:** `:median.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "median.column.1",<br />      "value": "median(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 중앙값을 반환합니다. `column.1` 
  - **조건:** 제품 / **valueExpression:** `:product.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "product.column.1",<br />      "value": "product(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 제품을 반환합니다. `column.1` 
  - **조건:** 표준 편차 / **valueExpression:** `:standarddeviation.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "standarddeviation.column.1",<br />      "value": "stddev(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 표준 편차를 반환합니다. `column.1` 
  - **조건:** 분산 / **valueExpression:** `:variance.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "variance.column.1",<br />      "value": "variance(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 분산을 반환합니다. `column.1` 
  - **조건:** 평균의 표준 오차 / **valueExpression:** `:standarderrorofmean.column.1` / **withExpressions:**  <pre>[<br />   {<br />   "name": "standarderrorofmean.column.1",<br />   "value": "standard_error_of_mean(`column.1`)",<br />   "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 평균의 표준 오차를 반환합니다. `column.1` 
  - **조건:** 왜도 / **valueExpression:** `:skewness.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "skewness.column.1",<br />      "value": "skewness(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 왜도를 반환합니다. `column.1` 
  - **조건:** 쿠르트증 / **valueExpression:** `:kurtosis.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "kurtosis.column.1",<br />      "value": "kurtosis(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 kurtosis를 반환합니다. `column.1` 

- ** Datetime/Numeric/Text **
  - **조건:** 개수 / **valueExpression:** `:count.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 총 행 수를 반환합니다. `column.1` 
  - **조건:** 고유한 수 / **valueExpression:** `:countdistinct.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(distinct `column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 에서 고유 행의 총 수를 반환합니다. `column.1` 
  - **조건:** 최소 / **valueExpression:** `:min.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "min.column.1",<br />      "value": "min(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 최소값을 반환합니다. `column.1` 
  - **조건:** 최대 / **valueExpression:** `:max.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "max.column.1",<br />      "value": "max(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **반환 값:** 의 최대값을 반환합니다. `column.1` 



## valueExpression의 유효한 조건
<a name="valid-conditions-table"></a>

아래 표에는 지원되는 조건과 사용할 수 있는 값 표현식이 나와 있습니다.



- ** 문자열 **
  - **조건:** 포함 / **valueExpression:** contains(`column`, 'text') / **설명:** 열의 값에 텍스트가 포함되어 있는지 테스트하는 조건
  - **조건:** 를 포함하지 않음 / **valueExpression:** \!contains(`column`, 'text') / **설명:** 열의 값이 텍스트를 포함하지 않는지 테스트하는 조건
  - **조건:** 일치 항목 / **valueExpression:** matches(`column`, 'pattern') / **설명:** 열의 값이 패턴과 일치하는지 테스트하는 조건
  - **조건:** 일치하지 않음 / **valueExpression:** \!matches(`column`, 'pattern') / **설명:** 열의 값이 패턴과 일치하지 않는지 테스트하는 조건
  - **조건:** 다음으로 시작 / **valueExpression:** startsWith(`column`, 'text') / **설명:** 열의 값이 텍스트로 시작하는지 테스트하는 조건
  - **조건:** 로 시작하지 않음 / **valueExpression:** \!startsWith(`column`, 'text') / **설명:** 열의 값이 텍스트로 시작되지 않는지 테스트하는 조건
  - **조건:** 다음으로 끝남 / **valueExpression:** endsWith(`column`, 'text') / **설명:** 열의 값이 텍스트로 끝나는지 테스트하는 조건
  - **조건:** 로 끝나지 않음 / **valueExpression:** \!endsWith(`column`, 'text') / **설명:** 열의 값이 텍스트로 끝나지 않는지 테스트하는 조건

- ** Numeric **
  - **조건:** 보다 작음 / **valueExpression:** `column` < 숫자 / **설명:** 열의 값이 숫자보다 작은지 테스트하는 조건
  - **조건:** 작거나 같음 / **valueExpression:** `column` <= 숫자 / **설명:** 열의 값이 숫자보다 작거나 같은지 테스트하는 조건
  - **조건:** 보다 큼 / **valueExpression:** `column` > 숫자 / **설명:** 열의 값이 숫자보다 큰지 테스트하는 조건
  - **조건:** 크거나 같음 / **valueExpression:** `column` >= 숫자 / **설명:** 열의 값이 숫자보다 크거나 같은지 테스트하는 조건
  - **조건:** 사이에 있음 / **valueExpression:** isBetween(`column`, minNumber, maxNumber) / **설명:** 열의 값이 minNumber와 maxNumber 사이에 있는지 테스트하는 조건
  - **조건:** 사이에 있지 않음 / **valueExpression:** \!isBetween(`column`, minNumber, maxNumber) / **설명:** 열의 값이 minNumber와 maxNumber 사이에 있지 않은지 테스트하는 조건

- ** 부울 **
  - **조건:** true입니다. / **valueExpression:** `column` = TRUE / **설명:** 열의 값이 부울 TRUE인지 테스트하는 조건
  - **조건:** false임 / **valueExpression:** `column` = FALSE / **설명:** 열의 값이 부울 FALSE인지 테스트하는 조건

- ** Date/Timestamp **
  - **조건:** 이전 / **valueExpression:** `column` < 'date' / **설명:** 열의 값이 날짜보다 이전인지 테스트하는 조건
  - **조건:** 이하 / **valueExpression:** `column` <= 'date' / **설명:** 열의 값이 날짜보다 빠르거나 같은지 테스트하는 조건
  - **조건:** 보다 이후 / **valueExpression:** `column` > 'date' / **설명:** 열의 값이 날짜 이후인지 테스트하는 조건
  - **조건:** 보다 크거나 같음 / **valueExpression:** `column` >= 'date' / **설명:** 열의 값이 날짜보다 크거나 같은지 테스트하는 조건

- **  String/Numeric/Date/타임스탬프 **
  - **조건:** 정확히 입니다. / **valueExpression:** `column` = '값' / **설명:** 열의 값이 정확히 값인지 테스트하는 조건
  - **조건:** Is not / **valueExpression:** `column` \!= '값' / **설명:** 열의 값이 값이 아닌지 테스트하는 조건
  - **조건:** 누락됨 / **valueExpression:** isMissing(`column`) / **설명:** 열의 값이 누락된 경우 테스트할 조건
  - **조건:** 누락되지 않음 / **valueExpression:** \!isMissing(`column`) / **설명:** 열의 값이 누락되지 않았는지 테스트하는 조건
  - **조건:** 유효함 / **valueExpression:** isValid(`column`, datatype) / **설명:** 열의 값이 유효한지 테스트하는 조건(값이 데이터 형식이거나 데이터 형식으로 변환할 수 있음)
  - **조건:** 유효하지 않음 / **valueExpression:** \!isValid(`column`, datatype) / **설명:** 열의 값이 유효하지 않은지 테스트하는 조건(값이 데이터 형식이거나 데이터 형식으로 변환할 수 있음)

- ** 중첩 **
  - **조건:** 누락됨 / **valueExpression:** isMissing(`column`) / **설명:** 열의 값이 누락된 경우 테스트할 조건
  - **조건:** 누락되지 않음 / **valueExpression:** \!isMissing(`column`) / **설명:** 열의 값이 누락되지 않았는지 테스트하는 조건
  - **조건:** 유효함 / **valueExpression:** isValid(`column`, datatype) / **설명:** 열의 값이 유효한지 테스트하는 조건(값이 데이터 형식이거나 데이터 형식으로 변환할 수 있음)
  - **조건:** 유효하지 않음 / **valueExpression:** \!isValid(`column`, datatype) / **설명:** 열의 값이 유효하지 않은지 테스트하는 조건(값이 데이터 형식이거나 데이터 형식으로 변환할 수 있음)

