パラメータ化されたクエリの記述
SQL ステートメントでセルを参照することで、動的スプレッドシートを作成できます。本製品 は、ステートメントをパラメータ化されたクエリとして実行します。シート内の値を変更すると、本製品 は新しいクエリを実行します。
検索可能なスプレッドシートの作成
パラメータ化されたSELECT WHERE クエリを使用して、セルを編集するときにデータを動的にフィルタするスプレッドシートを作成します。次のフィルタ検索条件は@InputSheet!A2 パラメータ(InputSheet シートのセルA2)を参照します。
SELECT Id, Name FROM [CData].[Elasticsearch].Employee WHERE Industry = @InputSheet!A2
任意パラメータと必須パラメータの定義
パラメータに@@ を付ける場合、参照セルの空の値はクエリに影響しません(すなわち、空の値のセルが参照されるコンディションは削除されます)。
次のクエリでは、Name はオプションの検索パラメータですが、Industry が指定される必要があります。
SELECT * FROM [CData].[Elasticsearch].Employee WHERE Industry = @InputSheet!A2 AND Name = @@InputSheet!A3
動的なテーブル参照
セル参照の前に@@@を付けることで、クエリ内のテーブルを動的に参照できます。次のクエリは、InputSheet シートのセルA1 から値を読み取り、リクエストを実行する際にテーブル名に使用します。
SELECT * FROM @@@InputSheet!A1
その他の検索条件の記述
デフォルトでは、Elasticsearch カラムがセル値を持つ場合には、本製品 は一致を報告します。例えば、参照されたセルの値が'Floppy Disks' である場合、同等のSQL 述語は:
LIKE '%Floppy Disks%'
セル値に'%' を追加することで、start-with およびends-with 検索を実行することができます。
InputSheet!A2 Cell | Query | Equivalent Predicate |
'Floppy Disks' | SELECT * FROM [CData].[Elasticsearch].Employee WHERE Industry LIKE @InputSheet!A2 | LIKE '%Floppy Disks%' |
'%Floppy Disks' | SELECT * FROM [CData].[Elasticsearch].Employee WHERE Industry LIKE @InputSheet!A2 | LIKE '%Floppy Disks' |
'Floppy Disks%' | SELECT * FROM [CData].[Elasticsearch].Employee WHERE Industry LIKE @InputSheet!A2 | LIKE 'Floppy Disks%' |