Tip

このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください

SQLモードでデータをクエリする

「データクエリ」パネルでSQLモードに切り替えて、クエリ文を記述し実行すると、返された結果を直接チャートのマッピングやレンダリングに利用できます。

20251027075805

SQL文を記述する

  • 「データクエリ」パネルで「SQL」モードを選択します。
  • SQLを入力し、「クエリを実行」をクリックして実行します。
  • 複雑な複数テーブルのJOINやVIEWなど、完全なSQL文をサポートしています。

例:月ごとの注文金額の集計

SELECT
  TO_CHAR(order_date, 'YYYY-MM') as mon,
  SUM(total_amount) AS total
FROM "order"
GROUP BY mon
ORDER BY mon ASC
LIMIT 100;

結果を確認する

  • 「データを表示」をクリックすると、データ結果のプレビューパネルが開きます。

20251027080014

データはページネーション表示に対応しており、Table/JSONを切り替えて列名と型を確認することもできます。 20251027080100

フィールドマッピング

  • 「チャートオプション」の設定で、クエリデータの結果列に基づいてマッピングを完了します。
  • デフォルトでは、最初の列がディメンション(X軸またはカテゴリ)として、2番目の列がメジャー(Y軸または値)として自動的に使用されます。そのため、SQLでのフィールドの順序に注意してください。
SELECT
  TO_CHAR(order_date, 'YYYY-MM') as mon, -- ディメンションフィールドは最初の列に配置
  SUM(total_amount) AS total -- メジャーフィールドはその後ろに配置

clipboard-image-1761524022

コンテキスト変数を使用する

SQLエディター右上のxボタンをクリックすると、コンテキスト変数を使用できます。

20251027081752

選択して確定すると、SQLテキストのカーソル位置(または選択された内容の位置)に、変数の式が挿入されます。

例:{{ ctx.user.createdAt }}。自分で余分な引用符を追加しないように注意してください。

20251027081957

その他の例

その他の使用例については、NocoBaseのデモアプリをご参照ください。

推奨事項:

  • 列名が安定してからチャートマッピングを行うことで、後続のエラーを回避できます。
  • デバッグ段階では、LIMITを設定して返される行数を減らし、プレビューを高速化することをお勧めします。

プレビュー、保存、およびロールバック

  • 「クエリを実行」をクリックすると、データがリクエストされ、チャートのプレビューが更新されます。
  • 「保存」をクリックすると、現在のSQLテキストや関連する設定がデータベースに保存されます。
  • 「キャンセル」をクリックすると、最後に保存された状態に戻り、現在の未保存の変更は破棄されます。