すべてのプロダクト
Search
ドキュメントセンター

DataWorks:SQL クエリ (新バージョン)

最終更新日:Jul 02, 2026

データを迅速にクエリおよび分析するために、SQL ステートメントを使用して MaxCompute、EMR Hive、Hologres などのデータソースにクエリを実行できます。このトピックでは、データソースに対して SQL クエリを実行する方法について説明します。

重要

このトピックは DataAnalysis の新バージョンに適用されます。以前のバージョンについては、「SQL クエリ (旧バージョン)」をご参照ください。ナビゲーションバーで DataAnalysis の新旧バージョンを切り替えることができます。

対応データソース

SQL クエリは、次のデータソースタイプに対応しています: MaxComputeHologresEMRCDHADB for PostgreSQLADB for MySQLClickHouseStarRocksMySQLPostgreSQLOracleSQL ServerDorisSelectDBLindorm Spark

説明

MaxCompute のみが直接接続とデータソース接続の両方によるクエリに対応しています。他のデータソースタイプは、ワークスペース内のデータソースのクエリのみに対応しています。

データソースの権限

データソースの範囲

  • データソース接続モード: 必要な権限を持つワークスペース内のデータソースからのみデータを選択できます。ワークスペース管理者に依頼して、まずあなたをワークスペースに追加してもらい、 データアナリスト開発者運用保守エンジニア、または ワークスペース管理者 として設定してもらう必要があります。

  • 直接接続モード: Alibaba Cloud アカウントがメンバーである MaxCompute プロジェクトのみを選択できます。MaxCompute プロジェクトの権限に関する詳細については、「MaxCompute のユーザーと権限」をご参照ください。

データソースのアクセス権限

以下の 2 つのアクセスアイデンティティモードのいずれかを使用してデータソースにアクセスできます。

アクセスアイデンティティモード

説明

対応データソース

認可

[Executor Identity]

DataWorks へのログインに使用する Alibaba Cloud アカウントのアイデンティティです。

MaxCompute および Hologres。

指定された MaxCompute プロジェクトまたは Hologres インスタンスの管理者にメンバー権限の付与を依頼してください。

[Data Source Default Access Identity]

データソースの作成時に構成されたアクセスアイデンティティです。

この機能でサポートされているすべてのデータソース

アカウントがデータソースのデフォルトアクセスアイデンティティでない場合は、 ワークスペース管理者 に、Alibaba Cloud アカウントへの権限付与を依頼してください。

重要

MaxCompute プロジェクトで IP アドレスホワイトリストが有効になっている場合は、DataAnalysis ホワイトリストの IP アドレスを MaxCompute プロジェクトの IP アドレスホワイトリストに追加してください。

機能へのアクセス

DataWorks DataAnalysis にログインし、ターゲットリージョンに切り替えてから、[DataAnalysis に移動] をクリックします。

  • ナビゲーションバーにSwitch to New DataAnalysisが表示されている場合は、クリックして新しいバージョンに切り替えます。

  • ナビゲーションバーにReturn to Legacy DataAnalysisが表示されている場合、新しいバージョンです。

SQL クエリの作成

  1. [個人ディレクトリ] > My Filesにポインターを合わせ、image > [新規 SQL ファイル]をクリックします。

    [新規フォルダー] をクリックして、SQL クエリファイル用のカスタムフォルダー構造を作成することもできます。
  2. SQL エディターで SQL クエリを作成します。

    重要

    以下の方法でも SQL ステートメントを生成できます:

    • [データカタログ] ページで、データカタログを追加した後、対象のテーブルを見つけ、テーブルを右クリックして [クエリ SQL を生成] を選択します。

    • [共有ファイル] フォルダーから共有された SQL クエリをコピーします。

    • SQL コードを記述した後、ツールバーの Format ボタンをクリックしてコードを整形します。

    • SQL クエリは Copilot に対応しています。ナビゲーションバーの右上隅にある Copilot アイコン (image) をクリックして、コード生成コード修正などの機能を使用して、コード作成に役立てることができます。Copilot はエディター内でのコード補完も提供し、効率を向上させます。

    SQL の例

    以下の SQL ステートメントは、MaxCompute の公開 GitHub イベントデータをクエリします:

    -- セッションレベルのスキーマ構文を有効にします。
    SET odps.namespace.schema=true; 
    -- dwd_github_events_odps テーブルから 100 行をクエリします。
    SELECT * FROM bigdata_public_dataset.github_events.dwd_github_events_odps WHERE ds='${dt}' LIMIT 100;
    説明
    • スキーマ構文が有効になっている MaxCompute プロジェクトをクエリする場合、クエリステートメントの前に SET odps.namespace.schema=true; を追加する必要があります。これにより、セッションレベルのスキーマ構文が有効になり、クエリの失敗を防ぎます。

    • デフォルトでは、クエリは現在の Run Configuration で指定されたデータソースで実行されます。 メンバーになっている他の MaxCompute プロジェクトにクエリを実行するには、クエリステートメントでプロジェクト名を明示的に指定する必要があります。 たとえば、実行設定のコンピューティングリソースが MaxCompute A で、クエリステートメントが MaxCompute B (SELECT * FROM B.schema_name.table_name WHERE ****) を指定している場合、システムは A の実行エンジンを使用して B のデータをクエリします。

  3. SQL クエリを記述した後、右側のRun Configurationをクリックし、Data SourceScript Parametersなどの設定を構成します。

    • [Type]: SQL クエリの対象となるデータソースタイプを選択します。データソースタイプが MaxCompute の場合、コンピューティングクォータを構成できます。バッチ処理とインタラクティブシナリオの両方で、従量課金とサブスクリプションの課金方法に対応しています。MaxCompute クォータの管理方法の詳細については、「コンピューティングリソース (クォータ) の管理」をご参照ください。

    • [Computing Resource]: SQL クエリの対象データソースを指定します。MaxCompute データのみをクエリする場合、直接接続またはデータソース接続を使用できます。他のタイプのデータソースについては、権限を持つワークスペース内のデータソースからのみデータをクエリできます。権限の詳細については、「データソースの権限」をご参照ください。

    • [Script Parameters]: SQL クエリがパラメーター変数を使用している場合、実行時にそれらに値を割り当てることができます。

      重要

      解析に失敗した場合は、左下隅の [管理] > [設定] に移動し、解析を検索して、[DataWorks ISP コードパラメーター機能を有効にする] チェックボックスを選択してください。

  4. SQL エディターのツールバーで、Run をクリックします。また、Run ボタンの横にあるドロップダウンアイコン image をクリックして、実行モードを切り替えることもできます。シナリオに基づいて実行モードを選択できます。

    実行モード

    ユースケース

    トリガー条件

    対応エンジン

    クエリモード (LIMIT 10000)

    データの迅速なプレビューとクエリロジックの検証。 このモードは、結果の小さなサンプルのみを表示する必要がある予備的なデータ探索に適しています。

    クエリ結果が 10,000 行以下であり、サイズが 10 MB 以下です。

    すべて

    クエリモード (全量データ)

    分析またはエクスポートのための完全な結果セットの取得。 すべてのデータを処理して表示する必要がある場合、システムは自動的にこのモードをトリガーします。

    クエリ結果が 10,000 行を超えるか、サイズが 10 MB を超えます。

    すべて

    一時テーブルモード

    複数ステップの複雑なクエリでの結果の再利用。 あるクエリの出力を後続のクエリの入力として使用できるため、開発とデバッグの効率が向上します。

    クエリ結果が 10,000 行以下であり、サイズが 10 MB 以下です。結果は自動的に一時テーブルに書き込まれます。

    MaxCompute のみ

  5. SQL クエリの実行後、結果ページで [運用ログ][結果]、および対応する SQL コードを表示できます。

    クエリ結果の右上隅にあるボタンをクリックすると、左右分割レイアウトと上下分割レイアウトを切り替えることができます。

BLOB 型フィールドの表示

MaxCompute は、画像やテキストなどのバイナリラージオブジェクトを格納する BLOB 型フィールドに対応しています。クエリ結果テーブルで、BLOB フィールドのセルをダブルクリックすると、[現在のフィールド値] ダイアログボックスでその内容を表示できます。

[現在のフィールド値] ダイアログボックスは、デフォルトで [Blob ビュー] で開き、返されたデータに基づいて表示形式を自動的に選択します:

  • JPEGPNGGIFWebPBMPICO などの画像形式の場合、ダイアログボックスは画像を直接レンダリングします。画像を保存するには、画像を右クリックして [名前を付けて保存] を選択します。

  • text/*application/jsonapplication/xml などのテキスト形式の場合、ダイアログボックスは内容を読み取り専用テキストとして表示します。

ダイアログボックスの下部にあるボタンを使用して、[Blob ビュー][テキストビュー][JSON ビュー] を切り替えることができます。

クエリ結果の可視化

クエリ結果の左側にあるツールバーで、image ボタンをクリックすると、結果から自動的にチャートが生成されます。

説明

image

エクスポートと共有

重要

データをローカルファイルにエクスポートしてから別のデータソースにインポートする必要がある場合は、 Data Integration一括同期タスクを使用してください。この方法は、より効率的で安定したデータ移行と同期を提供します。

SQL クエリ結果の右側で、Export をクリックします。以下のエクスポートオプションがサポートされています。

  • ローカルファイル: クエリ結果を CSV ファイルとしてローカルコンピューターにダウンロードします。詳細は次の表をご参照ください。

    項目

    説明

    ダウンロード制限

    • MaxCompute、EMR、Lindorm Spark エンジンのみに対応しています。詳細については、「データダウンロード制限」をご参照ください。

    • MaxCompute プロジェクトでデータ保護メカニズムが有効になっており、データダウンロードが禁止されている場合、DataAnalysis からのダウンロードは失敗します。

    [Scope]

    Only Data Displayed in Table または All Data をダウンロードできます。

    • [Only Data Displayed in Table]: 現在のページに表示されているデータのみをダウンロードします。デフォルトでは、最大 10000 行をダウンロードできます。

    • [All Data]:エクスポート制限内のすべてのクエリ結果をエクスポートします。

    ダウンロード方法

    Download After Approval または Download Without Approval を選択できます。

    • 承認付きでダウンロード: この方法では、データをダウンロードするために承認リクエストが必要です。設定可能なリスク検出ルールを使用して潜在的なデータリスクを特定することで、セキュリティを確保するのに役立ちます。

      説明

      DataWorks Enterprise Edition のみがリスク検出ルールをサポートしています。

    • 承認なしでダウンロード: これはデフォルトの方法です。承認は必要ありません。

  • Object Storage Service (OSS): クエリ結果を、CSV や Parquet などの指定された形式で Object Storage Service (OSS) バケットにエクスポートします。このオプションは、大量のデータのアーカイブや他のクラウド製品との統合に適しています。

    この機能を初めて使用する際には、DataWorks に OSS リソースへのアクセス許可を付与する必要があります。[ファイルパス] ドロップダウンリストで、プロンプトの [ワンクリック認可] リンクをクリックし、画面の指示に従って RAM 認可を完了してください。

    パラメーター

    説明

    ファイルパス

    右側のフォルダーアイコンをクリックして、結果ファイルを保存する OSS バケットとディレクトリを選択します。

    ファイル名

    システムは自動的にファイル名を生成しますが、変更することもできます。

    ファイル形式

    ファイル形式を選択します。サポートされている形式:csvtextorcparquet

    区切り文字

    列を区切るための区切り文字で、デフォルトはコンマ (,) です。

    エンコード形式

    ファイルのエンコーディング形式 (UTF-8GBK など)。

    CU

    エクスポートタスクのコンピューティングユニット (CU) の数です。デフォルト値:1。

    リソースグループ

    このエクスポートタスクを実行するサーバーレスリソースグループを選択します。リソースグループを選択しない場合、[DataAnalysis] > [システム管理] で設定されたデータ統合リソースグループが使用されます。

    パラメーターを設定した後、[OK] をクリックしてエクスポートタスクを開始します。タスク実行ページで、エクスポートの進捗、運用ログ、設定詳細を表示できます。タスクが成功した後、OSS コンソールに移動してエクスポートされたファイルをローカルコンピューターにダウンロードします。

  • DingTalk Sheet: 結果を DingTalk Sheet にエクスポートします。詳細については、「スプレッドシート」をご参照ください。

  • ワークブックと共有: クエリデータをワークブックに保存して、さらなる分析を行うことができます。また、ワークブックからの最新の分析結果を他の人と共有することもできます。

ファイルの共有

DataAnalysis の新バージョンでは、SQL クエリファイル、Notebook ファイル、フォルダーのファイルレベルでの共有に対応しています。ファイルやフォルダーを共同作業者と迅速に共有できます。共有されたアイテムは受信者の [共有ファイル] フォルダーに表示され、受信者はそれらを読み取り専用で表示またはコピーできます。

以下のいずれかのエントリーポイントから共有します:

  • 編集ページからファイルを共有: 対象の SQL クエリまたは Notebook ファイルを開きます。編集ページの上部にあるツールバーで、[共有] をクリックします。

  • ファイルツリーからファイルを共有する:左側のファイルツリーで、対象の SQL クエリまたは Notebook ファイルを右クリックして、[共有] を選択します。

  • ファイルツリーからフォルダーを共有する:左側のファイルツリーで、対象のフォルダーを右クリックし、[共有] を選択します。フォルダーを共有すると、フォルダー内のすべてのファイルが一緒に共有されます。

表示される共有ダイアログボックスで、次の設定を構成し、[OK] をクリックします:

  • 共有方法[ワークスペース] または [Alibaba Cloud アカウント] を選択します。

  • 共有範囲: 選択した共有方法に基づいて、共有する特定のワークスペースまたは Alibaba Cloud アカウントを選択します。複数選択が可能です。

  • リンクアドレス: SQL クエリまたは Notebook ファイルを共有する場合にのみ利用可能です。[リンクをコピー] をクリックして共有リンクをコピーし、共同作業者に送信すると、共同作業者はそのリンクから直接ファイルを開くことができます。フォルダーを共有する場合、リンクアドレスは提供されません。