

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 資料列篩選條件表達式中的 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/)。