MENU
    チューリップ・テーブルのクエリと集約
    • 08 Jan 2025
    • 1 読む分
    • 寄稿者

    チューリップ・テーブルのクエリと集約


    記事の要約

    目的

    Tulipテーブルをクエリし、Tulip Appsからアクセス可能な集計を作成する方法を学びます。

    この記事では、次のことを学びます。

    • テーブルクエリの機能
    • クエリと集計の作成方法
    • アプリでのクエリと集計の使用方法

    テーブルクエリとテーブル集計の紹介

    テーブルクエリとテーブル集計を使用すると、Tulipテーブルをダイナミックに操作して、データをフィルタリングしたり、アプリで使用できるように要約したりできます。

    この記事では、10行を持つ次の注文テーブルを参照します:

    右上にQueriesと Aggregationsのボタンがあります。右上にQueriesとAggregationsのボタンがある。

    次の例では、出荷されていないレコードのみを返すフィルタを使用しています:

    集計はクエリの上に追加され、クエリのようにテーブルレベルで作成されます。新しい集計を作成するには、**[Aggregations]**をクリックします。

    次の例では、テーブルフィールド「商品数量」を集計します:

    クエリオプション

    フィルタ

    特定の列、または複数の列を静的値またはアプリ入力と比較して、レコードをフィルタリングします。

    比較オプションの例を以下に示します:

    • 等しい / 等しくない
    • NULL / NULLでない
    • 含む / 含まない
    • で始まる / で始まらない
    • で終わる / で終わらない
    • である
    • 以上である / 以下である
    • が後またはatである / が前またはatである

    Static Valueはクエリを構築する際に静的に設定されるが、App Inputはアプリ自体で設定される。App Inputは以下のように設定できる:

    • 変数
    • 静的値
    • アプリ情報
    • チューリップ・テーブル・レコード

    テーブル・クエリでCreated AtフィールドとUpdated Atフィールドを使用できるようになりました。

    ソート

    Sortオプションを設定することで、レコードの表示をカスタマイズできます。例を以下に示します:

    • AからZ / ZからA
    • 0から9 / 9から0

    上限

    クエリによって返されるレコードの最大数。

    • デフォルト:1,000
    • 最大1,000

    :::(警告) (制限時の動作)

    クエリ・フィルタに一致するレコードがテーブル内に制限数より多い場合 (またはフィルタを設定しない場合は全体として)、制限数で指定された数だけがクエリ結果に含まれます。

    クエリにソートが含まれている場合は、そのソートに従った最初のレコードが含まれます。
    :::

    テスト

    Filter、Sort、Limit オプションを設定してクエリを設定した後、Test をクリックしてテーブル上でクエリをテストできます。これにより、クエリがアプリで返す結果をシミュレートできます。

    集計

    集計は、クエリ上で実行されるサマリ値であり、特定のカラムに対して以下の値のいずれかを計算することができます:

    • 平均
    • カウント
    • 最大値
    • 最小
    • モード
    • 合計
    • 一意の値

    :::(警告) (制限) 集計は、設定されているテーブル・クエリによって返されるレコードに対して実行されます。したがって、集約の親テーブルクエリに設定された制限は、集約にも適用されます。

    つまり、Aggregation が考慮できるレコードは最大 1,000 件です。そのため、指定されたフィルタのレコード数が制限数より多く、ユーザがクエリの制限を認識していない場合、予期しない結果が表示される可能性があります。

    アプリで使用するために1,000以上のレコードを集計する必要がある場合は、コネクタ関数を介して、最大100,000レコードをサポートするTulip APIのrunAggregationエンドポイントを使用することができます。より多くのレコードの集計を視覚化するだけであれば、テーブル内のすべてのレコードを集計できるTulip AnalyticsでSingle Value分析を構築できます。
    :::

    アプリでクエリと集計を使用する

    アプリへのクエリの追加

    アプリにクエリを追加するには、まず[Records]タブで**[+Add Table]をクリックして、テーブルをアプリに追加します。**次に、[Query]をクリックします。

    表示されるモーダルで、クエリに「Query Name(クエリ名)」を指定し、該当する場合はフィルタに関連する「App Input(アプリ入力)」を構成します。この例では、クエリ「Products Not Shipped」を参照してください**:**

    クエリがアプリで構成されたので、インタラクティブテーブルを埋め込み、クエリとなるデータソースを選択します。

    埋め込みテーブルには、クエリの結果が表示されます。この例では、**'Shipped' equals 'No'**というフィルタを満たすレコードが3件返されています:

    アプリへの集計の追加

    クエリをAppに追加する方法と同様に、+Add Aggregationをクリックして集計を追加し、Aggregation Nameを割り当てます。

    この例では、未出荷のレコードのみを返すクエリに対して、Total Qty Products Orderedという集計を実行しています。このため、集計名はQuantity of Products to be Shippedとなっています**:**

    アプリに集約を埋め込むには、変数(Variable)をアプリにドロップし、データソース(Datasource)-チューリップ・テーブル集約(Tulip Table Aggregation)を選択します。次に、アプリに集約を追加するときに構成された集約名を選択します。

    この例では、出荷が必要なレコードを返すQueryの上で、Sum of Product Quantityという集計が実行されています。これは合計17を返します:

    アプリのロジックで集計を使用する

    集約を使用すると、集約の値を中心にアプリロジックを構築することができます。以下の例を参照してください:

    Single NumberTulip Analyticsは現在アプリからアクセスできないため、アプリロジックで直接利用することはできません。クエリから集計を実行することで**、**この値をターゲットにすることができ、その値を中心にアプリロジックを構築することができます。


    この記事は役に立ちましたか?