

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

# 행 필터 표현식에서의 PartiQL 지원
<a name="partiql-support"></a>

PartiQL 데이터 유형, 연산자 및 집계의 하위 집합을 사용하여 행 필터 표현식을 생성할 수 있습니다. Lake Formation에서는 필터 표현식에 사용자 정의 함수 또는 표준 PartiQL 함수를 사용할 수 없습니다. 비교 연산자를 사용하여 열을 상수(예: `views >= 10000`)와 비교할 수 있지만, 열을 다른 열과 비교할 수는 없습니다.

 행 필터 표현식은 단순 표현식일 수도 있고 복합 표현식일 수도 있습니다. 표현식의 총 길이는 2048자 미만이어야 합니다.

**단순 표현식**  
단순 표현식의 형식은 다음과 같습니다. ` <column name > <comparison operator ><value >` 
+ **열 이름**

  테이블 스키마에 있는 최상위 데이터 열, 파티션 열 또는 중첩된 열이어야 하며 아래에 나열된 [지원되는 데이터 유형](#row-filter-supported-datatypes)에 속해야 합니다.
+ **비교 연산자**

   지원되는 연산자는 `=, >, <, >=, <=, <>,!=, BETWEEN, IN, LIKE, NOT, IS [NOT] NULL`입니다.
+  모든 문자열 비교와 `LIKE` 패턴 일치는 대/소문자를 구분합니다. 파티션 열에는 IS [NOT] NULL 연산자를 사용할 수 없습니다.
+ **열 값**

   열 값은 열 이름의 데이터 유형과 일치해야 합니다.

**복합 표현식**  
복합 표현식의 형식은 다음과 같습니다. `( <simple expression >) <AND/OR >(<simple expression >)`. 복합 표현식은 논리 연산자 `AND/OR`를 사용하여 추가로 결합할 수 있습니다.

## 지원되는 데이터 유형
<a name="row-filter-supported-datatypes"></a>

지원되지 않는 데이터 형식이 포함된 AWS Glue Data Catalog 테이블을 참조하는 행 필터는 오류가 발생합니다. 다음은 데이터 형식에 매핑되는 테이블 열 및 상수에 대해 지원되는 Amazon Redshift 데이터 형식입니다.
+ `STRING, CHAR, VARCHAR`
+ `INT, LONG, BIGINT, FLOAT, DECIMAL, DOUBLE`
+ `BOOLEAN`
+  `STRUCT` 

Amazon Redshift의 데이터 유형에 대한 자세한 정보는 **Amazon Redshift 데이터베이스 개발자 안내서의 [데이터 유형](https://docs.aws.amazon.com/redshift/latest/dg/c_Supported_data_types.html)을 참조하세요.

## 행 필터 표현식
<a name="Row-Filter-Expressions"></a>

**Example**  
다음은 열이 있는 테이블에 적합한 행 필터 표현식의 예입니다. ` country (String), id (Long), year (partition column of type Integer), month (partition column of type Integer)`   
+ `year > 2010 and country != 'US'`
+ `(year > 2010 and country = 'US') or (month < 8 and id > 23)`
+ `(country between 'Z' and 'U') and (year = 2018)`
+ `(country like '%ited%') and (year > 2000)`

**Example**  
다음은 중첩된 열이 있는 테이블에 적합한 행 필터 표현식의 예입니다. `year > 2010 and customer.customerId <> 1 `   
 중첩된 행 수준 식을 정의할 때 파티션 열 아래의 중첩된 필드를 참조해서는 안 됩니다.

문자열 상수는 작은따옴표로 묶어야 합니다.

## 예약어
<a name="partiql-reserved-keywords"></a>

행 필터 표현식에 PartiQL 키워드가 포함된 경우 열 이름이 키워드와 충돌할 수 있으므로 구문 분석 오류가 발생합니다. 이런 경우에는 큰따옴표를 사용하여 열 이름을 이스케이프 처리하세요. 예약된 키워드의 예로는 "first", "last", "asc", "missing"이 있습니다. 예약된 키워드 목록은 PartiQL 사양을 참조하세요.

## PartiQL 참조
<a name="partiql-ref"></a>

PartiQL에 대한 자세한 내용은 [https://partiql.org/](https://partiql.org/) 섹션을 참조하세요.