テキスト ARRAY フィールド タイプなど、配列フィールド タイプで GraphQL フィルター クエリを実行しようとしています。
次のシナリオ例では:
テーブルを作成
CREATE TABLE Employee (
firstName text,
lastName text,
tags text[]
);
そして、次のいずれかの方法でテキスト配列フィールドをフィルタリングできます。
ARRAY タイプの CONDITION を指定した SELECT STATEMENT
SELECT * FROM Employee WHERE tags @> ARRAY['teamplayer']::varchar[]
これは、PostGres でも Postgraphile でも暗黙的に機能します。
Postgraphile GraphQL では、上記のテーブルを次のようにクエリできます。
クエリ
{
allEmployees(filter: {tags: {contains: "teamplayer"}}) {
nodes {
firstName
lastName
tags
}
}
}
結果は次のようになります。
応答
{
"data": {
"allEmployees": {
"nodes": [
{
firstName: 'Russell'
lastName: 'Dodds'
tags: ['teamplayer', 'punctual']
},
{
firstName: 'Emma'
lastName: 'Samsin'
tags: ['teamplayer']
}
]
}
}
}
Hasura の ARRAY フィールド タイプで同様の結果を得る方法について、参考文献や提案を教えてください。