SQL Editor

SQLを使ってデータのフィルタリング、集計、結合ができます。

基本的な使い方

SQL Editorを開く

メニューバーから Data > SQL Editor を選択すると、新しいSQL Editorタブが開きます。

クエリの実行

エディタにSQLクエリを入力し、Run Query ボタンをクリックするか、Cmd+Enter(Mac)または Ctrl+Enter(Windows)を押すとクエリが実行されます。実行結果は最初の10行がプレビュー表示されます。

結果の保存

クエリ結果を新しいデータセットとして保存できます。Output Dataset Name 欄に新しいデータセット名を入力し、Save as Dataset ボタンをクリックすると、派生データセットがプロジェクトに追加されます。

クエリの書き方

基本的なクエリ例

特定の列だけを取得するには、SELECT句で列名を指定します。

SELECT species, island, body_mass_g
FROM penguins

WHERE句を使って条件に合う行だけを抽出できます。

SELECT *
FROM penguins
WHERE body_mass_g > 4000

GROUP BY句と集計関数を組み合わせると、グループごとの集計ができます。

SELECT species, COUNT(*) as count, AVG(body_mass_g) as avg_mass
FROM penguins
GROUP BY species

ORDER BY句で結果を並び替え、LIMIT句で取得行数を制限できます。

SELECT *
FROM penguins
ORDER BY body_mass_g DESC
LIMIT 10

複数テーブルの結合

JOINを使用して複数のデータセットを結合できます。

SELECT a.*, b.category
FROM sales a
JOIN products b ON a.product_id = b.id

テーブル名について

FROM句には、プロジェクト内のデータセット名をそのまま使用できます。

SELECT * FROM penguins

データセット名は大文字・小文字を区別します。また、ハイフンや空白などの特殊文字を含む名前はダブルクォートで囲む必要があります。

SELECT * FROM "bike-sharing"

サポートされるSQL機能

MIDASのSQL EditorはDuckDBをベースにしており、標準的なSQLの機能をサポートしています。

  • SELECT、FROM、WHERE、GROUP BY、HAVING、ORDER BY、LIMIT
  • INNER/LEFT/RIGHT/FULL/CROSS JOIN
  • サブクエリ
  • UNION、INTERSECT、EXCEPT
  • ウィンドウ関数(ROW_NUMBER、RANK、LAG、LEAD等)
  • WITH句によるCTE(共通テーブル式)
  • CASE式
  • 集計関数(COUNT、SUM、AVG、MIN、MAX、STDDEV等)

詳細はDuckDBのSQL構文ドキュメントを参照してください。

オートコンプリート

SQL Editorは入力中にオートコンプリート候補を表示します。

  • データセット名(FROM句で補完)
  • SQLキーワード(SELECT、FROM、WHERE、GROUP BY等)
  • 集計関数(COUNT、SUM、AVG、MIN、MAX)

キーボードショートカット

ショートカット 動作
Cmd/Ctrl + Enter クエリを実行する
Cmd/Ctrl + F 検索する
Tab インデントを挿入する

派生データセット

SQL Editorで作成したデータセットは「派生データセット(Derived Dataset)」として保存されます。派生データセットは元のデータセットとの依存関係が記録され、Project Lineageタブで依存関係を確認できます。元データが更新された場合は、派生データセットも再計算できます。

制限事項

MIDASのSQL EditorはSELECT文(データ取得)のみをサポートしています。INSERT、UPDATE、DELETEなどのデータ変更や、CREATE TABLEなどのDDL(テーブル定義)は使用できません。

また、ブラウザ上で動作するため、メモリ制限により非常に大きなデータセットの処理には制限があります。