# Data Stewardshipコンポーネントで使用されるクエリー言語

tDataStewardshipTaskDeleteコンポーネントやtDataStewardshipTaskInputコンポーネントでTalend Query Language (TQL)を使用すれば、Talend Data Stewardshipから削除や読み取りを行うデータを照会したりフィルタリングしたりできます。

## TQLクエリーの構文

サーバーのタスクのフィルタリングするクエリーステートメントは1つまたは複数の条件で構成されます。

タスク条件は次のエレメントで構成されます。

* レコードのデータを参照する場合は、フィールド名の先頭にrecord.が付いていることが必要です。
* 演算子
* あらゆるリテラル値になりうる値文字列の前後に一重引用符を使用し、文字列内の引用符の前にバックスラッシュを付けます。

## TQLでクエリーできるフィールド

ファイル名はどのカスタムフィールドやメタデータフィールドからでも選べます。

次の表は、タスクでサポートされているメタデータフィールドをまとめたものです。

| メタデータフィールド | 説明 |
| --- | --- |
| id (文字列) | タスクの内部識別子 |
| 外部ID (文字列) | 外部システムから特定のタスクにアクセスするのに役立つタスク外部識別子 |
| currentState (文字列) | キャンペーンワークフローにおけるタスクの現在の状態 |
| assignee (文字列) | このタスクに現在割り当てられているデータスチュワードのuserId |
| targetTransition (文字列) | キャンペーンワークフローの次のステップにタスクを移行するためにユーザーが選択したトランジションの名前 |
| completed (ブール値) | trueタスクが完了した場合(ワークフローの最終状態になります) |
| priority (整数) | タスクの優先順位、0 (非常に低い)から4 (非常に高い)、デフォルトは2 (中程度) |
| dueDate | タスク期日のタイムスタンプ(ミリ秒) |
| matchScore (マージングキャンペーンおよびグルーピングキャンペーンのみ) | ソースデータ内の各グループの最高一致スコアを示す10進数の値 |
| version (整数) | タスクがアップデートされるたびに増加するタスクバージョンの整数値 |
| consumed (ブール値) | trueタスクが既に処理されている場合(これ以上処理できない、再開されていない場合) |
| createdBy (文字列) | タスク作成者のuserId |
| creationDate (長整数型) | このタスク作成日のタイムスタンプ(ミリ秒) |
| lastUpdatedBy (文字列) | タスクの最後のアップデートを行ったデータスチュワードのuserId |
| lastUpdateDate (長整数型) | タスクで最後に実行されたアップデートのタイムスタンプ(ミリ秒) |
| tags (文字列) | このタスクのユーザーが入力したタグのリスト |
| arbitration (アービトレーションキャンペーンとグルーピングキャンペーンのみ) | データスチュワードによって選択されたアービトレーションの選択 |

## TQLでサポートされている演算子

| 演算子 | 説明 |
| --- | --- |
| = | 入力した値に一致する結果を返します。 |
| != | 入力した値以外の値の結果を返します。 |
| &gt; | 入力した値よりも大きい結果を返します。 |
| &gt;= | 入力した値以上の結果を返します。 |
| &lt; | 入力した値よりも小さい結果を返します。 |
| &lt;= | 入力した値以下の結果を返します。 |
| contains | 参照値が含まれている結果を返します。 |
| containsIgnoreCase | 参照値(大文字と小文字を区別)が含まれている結果を返します。 |
| ~ | 正規表現に基づく参照値を使ってコンパイルする結果を返します。<br><br>例: name ~ '^[A-Z\|a-z]\*$' |
| complies | 文字ベースのパターンに準拠した結果を返します。詳細は、 [文字ペースのパターン文字ベースのパターン](https://help.qlik.com/talend/ja-JP/data-stewardship-user-guide/8.0/character-based-patterns)に関するドキュメンテーションをチェックしてください。<br><br>例: record.field1 complies 'aaaa99\_aaaaa9' |
| wordComplies | ワードベースのパターンに準拠した結果を返します。詳細は、 [文字ペースのパターン文字ベースのパターン](https://help.qlik.com/talend/ja-JP/data-stewardship-user-guide/8.0/word-based-patterns)に関するドキュメンテーションをチェックしてください。<br><br>例: record.field1 wordComplies '[word][number]\_[word][digit] |
| と | 指定された値の範囲内にある結果を返します。 |
| in | 式に一致する値のリストにある結果を返します。<br><br>例: record.field1 in ['value1', 'value2'] |

日付を比較では、参照値のタイムスタンプ形式を使用してください。

たとえば、次のクエリーを使えば2016-01-01後に作成したタスクをフィルタリングできます。

```
creationDate > 1451659712733
```

## TQLでサポートされているブール値演算子

ブール演算子andやor、またはnot演算子を使用し、条件を結合または反転させることができます。括弧がサポートされているため、デフォルトの先行ブール値が上書きされます。

割り当て先でタスクをフィルタリングし、レコードフィールドfirstnameをJohnと等しくするには:

```
assignee='user1@talend.com' and record.firstName='John'
```

割り当て先でタスクをフィルタリングし、レコードフィールドfirstnameをDe'wayneと等しくするには:

```
assignee='user2@talend.com' and record.firstName='De\'wayne'
```