Gemini の支援機能を使用して SQL を記述する

このドキュメントでは、Google Cloud の AI を活用したコラボレーターである Gemini を使用して、Spanner で次のことを行う方法について説明します。

Gemini for Google Cloud が、プロンプトやそのレスポンスをデータとして使用してモデルをトレーニングすることはありせん。詳しくは、Gemini for Google Cloud がデータを使用する方法をご覧ください。

このドキュメントは、Spanner、SQL、データ分析に精通したデータベース管理者とデータ エンジニアを対象としています。Spanner を初めて使用する場合は、Google Cloud コンソールを使用してデータベースを作成してクエリを実行するをご覧ください。

始める前に

  1. Gemini in Databases の設定が完了していることを確認します。
  2. このドキュメントのタスクを完了するには、必要な Identity and Access Management(IAM)権限があることを確認してください。
  3. Google Cloud コンソールで、[Spanner] ページに移動します。

    Spanner に移動

  4. リストからインスタンスを選択します。

  5. データベースを選択します。

  6. ナビゲーション メニューで [Spanner Studio] をクリックします。

  7. タスクバーで、pen_spark [Gemini] をクリックして Spanner の Gemini の機能を表示します。

  8. 有効にする Gemini 機能を選択します。たとえば、[SQL の補完] や [コメントからクエリを生成] です。プロジェクトで作業している他の人に影響を与えることなく、自分で機能を選択して試すことができます。

  9. 省略可: このドキュメントの例に従う場合は、まずデータベースのスキーマを作成するの説明に従って Singers テーブルを作成してください。

Spanner で Gemini の機能を無効にするには、これらの手順を繰り返して無効にする Gemini 機能の選択を解除します。

必要なロール

このドキュメントのタスクを完了するのに必要な権限を取得するには、プロジェクトに対する Spanner データベース リーダーroles/spanner.databaseReader)の IAM ロールを付与するよう管理者に依頼してください。ロールの付与の詳細については、アクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

自然言語プロンプトを使用して SQL クエリを生成する

Gemini の自然言語コメント(またはプロンプト)を使用すると、スキーマに基づいてクエリを生成できます。たとえば、Gemini へのプロンプトを次のように指定すると、その応答として SQL が生成されます。

  • 「顧客満足度アンケートの結果を追跡する表を作成します。」
  • 「Singers テーブルに誕生日という日付列を追加します。」
  • 「90 年代に生まれた歌手は何人ですか?」

Gemini のアシスト機能を使用して Spanner で SQL を生成する手順は以下のとおりです。

  1. Google Cloud コンソールで、[Spanner] ページに移動します。

    Spanner に移動

  2. リストからインスタンスを選択します。

  3. データベースを選択します。

  4. ナビゲーション パネルで [Spanner Studio] をクリックします。[エクスプローラ] ペインに、データベースにあるオブジェクトのリストが表示されます。

  5. データベースにクエリを実行するには、 [新しい SQL エディタ] タブをクリックします。SQL の生成が有効になっていることを確認します。

  6. SQL を生成するには、-- で始まり 単一行コメントが続くコメントをクエリエディタに入力してから、Return を押します。

    たとえば、プロンプト -- add a row to table singers を入力して Return を押すと、Gemini によって次のような SQL が生成されます。

    INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate)
    VALUES (1, Alex, 'M.', '1977-10-16');
    

    Singers テーブルを使用して例を続行するために、プロンプト -- show all singers born in the 70s を入力すると、Gemini によって次のような SQL が生成されます。

    SELECT *
    FROM Singers
    WHERE Singers.BirthDate
    BETWEEN '1970-01-01' AND '1979-12-31'
    
    
  7. 生成された SQL を確認して次のいずれかの操作を行います。

    • Gemini によって生成された SQL を受け入れるには、Tab を押してから [実行] をクリックして、推奨される SQL を実行します。
    • Gemini によって生成された SQL を編集するには、Tab を押し、SQL を編集してから [実行] をクリックします。
    • 提案を閉じるには、Esc を押すか、入力を続けます。

クエリエディタで SQL ステートメントを完成する

SQL コードの記述に役立つように、Spanner の Gemini によって AI が支援するコード補完の提案が提供されています。Gemini が有効化されているときは、Spanner Studio のクエリエディタにテキストを入力すると、Gemini が SQL コードを予測して自動入力します。

インライン コードの提案

インライン コードの提案を使用するには、次の手順に従います。

  1. Google Cloud コンソールで、[Spanner] ページに移動します。

    Spanner に移動

  2. リストからインスタンスを選択します。

  3. データベースを選択します。

  4. ナビゲーション パネルで [Spanner Studio] をクリックします。

  5. データベースにクエリを実行するには、 [新しい SQL エディタ] タブをクリックします。SQL 完成が有効になっていることを確認します。

  6. 行の末尾にクエリと、スペースまたは改行を入力します。テキストを入力すると、Gemini が、選択したデータベースのスキーマでサポートされているオブジェクトに基づいた推奨される SQL を表示します。

    たとえば、Singers テーブルに行を追加するには、INSERT INTO Singers という SQL の記述を開始します。

    Gemini は、次のような SQL を提案します。

    INSERT INTO Singers
    (SingerId, FirstName, LastName, BirthDate)
    VALUES
      (1, 'Marc', 'Singer', '1970-03-24')
    
  7. SQL の提案を確認し、次のいずれかの操作を行います。

    • Gemini によって生成された SQL を受け入れるには、Tab を押してから [実行] をクリックして、推奨される SQL を実行します。
    • Gemini によって生成された SQL を編集するには、Tab を押し、SQL を編集してから [実行] をクリックします。
    • 提案を閉じるには、Esc を押すか、入力を続けます。

コーディング サポート ツール

コーディング サポートツールを使用するには、次の手順を行います。

  1. Google Cloud コンソールで、[Spanner] ページに移動します。

    Spanner に移動

  2. リストからインスタンスを選択します。

  3. データベースを選択します。

  4. ナビゲーション パネルで [Spanner Studio] をクリックします。

  5. データベースにクエリを実行するには、 [新しいタブ] をクリックします。

  6. クエリエディタの横にある pen_spark [コーディング サポート] をクリックします。

  7. [コーディング サポート] ウィンドウで、プロンプトを入力します。たとえば、add a row to table singers と入力して [生成] をクリックします。

    Gemini によって次のような SQL が生成されます。

    INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate)
    VALUES (1, Alex, 'M.', '1977-10-16');
    
  8. 生成された SQL を確認し、次のいずれかを行います。

    • Gemini によって生成された SQL を受け入れるには、[挿入] をクリックしてそのステートメントをクエリエディタに挿入します。その後で、[実行] をクリックして提案された SQL を実行します。
    • 新しいクエリを生成するよう Gemini にリクエストするには、[編集] をクリックします。メッセージを編集したら、[更新] をクリックします。生成された新しいステートメントを受け入れるか、提案を閉じるを判断します。
    • 提案を閉じるには、[コーディング サポート] ウィンドウを閉じます。

クエリエディタで SQL ステートメントを説明する

Spanner で Gemini を使用して SQL クエリを自然言語で説明することができます。この説明は、クエリが複雑な場合や長い場合に構文、基礎となるスキーマ、ビジネス コンテキストを理解するのに役立ちます。

  1. Google Cloud コンソールで、[Spanner] ページに移動します。

    Spanner に移動

  2. リストからインスタンスを選択します。

  3. データベースを選択します。

  4. ナビゲーション パネルで [Spanner Studio] をクリックします。

  5. データベースにクエリを実行するには、 [新しいタブ] をクリックします。

  6. クエリエディタで、クエリを貼り付けます。

  7. Gemini による説明を取得したいクエリをハイライト表示してから、spark [このクエリを説明する] をクリックします。

    SQL の説明が [Gemini] ペインに表示されます。

次のステップ