本文へ移動

AIでSQLを作らせる方法|頼み方のコツと実行前の確認ポイント

売上データの集計や会員情報の抽出など、SQLを書く場面はエンジニア以外の仕事にもあります。生成AIやBigQueryのGeminiのように、自然言語からSQLを生成する仕組みが増えました。下書きを作らせる頼み方と、実行前の確認点を整理します。

データセンター内のサーバー機器
出典:Wikimedia Commons「Virginia Tech – data center」Christopher Bowns 撮影(CC BY-SA 2.0)

頼むときに伝えたい4つの情報

  • 対象のテーブル名と主な列名(列の意味も添える)
  • 欲しい結果の形(対象期間、並び順、上位何件か)
  • 使っているデータベースの種類(MySQL、PostgreSQL、BigQueryなど)
  • 除外したい条件(削除済みのデータやテストデータなど)

頼み方の例

たとえば、次のように頼みます。

テーブル名:orders(列:order_date、customer_id、amount)。
2026年10月の注文について、顧客ごとの合計金額を、
合計の大きい順に上位20件まで抽出するSQLを、
BigQuery用に作ってください。

条件を数字で具体的に書くほど、生成されるSQLのぶれは減ります。逆に「いい感じに集計して」のような頼み方では、意図と違う条件になりがちです。

一度で完成形を狙わず、まず抽出だけを頼み、結果を見てから並び替えや集計を追加していく進め方も有効です。生成されたSQLの意味が分からない部分があれば、「このSQLを日本語で説明して」と頼むと、行ごとの解説も作ってもらえます。読めないSQLは実行しない、という線引きが事故を防ぎます。

実行前に確認したいこと

  • テーブル名と列名が、実際のデータベースに存在するか
  • WHERE句の条件が漏れていないか(期間や対象の絞り込み)
  • UPDATE文やDELETE文が紛れていないか。最初はSELECT文で件数だけを確認する
  • 本番のデータベースでいきなり実行せず、可能なら検証用の環境で試す

実行した結果の件数や合計が想定と大きく違う場合は、条件の解釈が意図とずれているサインです。そのまま使わず、どの条件で絞ったかをAIに説明させてから直すと、原因にたどり着きやすくなります。

公式ドキュメントで確認できること

Google Cloudの公式ドキュメントでは、BigQueryのGeminiが、自然言語の指示からSQLを生成し、既存クエリの説明や修正もできると案内されています。また、Gemini for Google Cloudについては、許可なくプロンプトや回答をモデルのトレーニングに使用しないと説明されています。とはいえ、顧客情報のような機密データをプロンプトにそのまま貼るのは避け、列名やデータの構造だけを伝えるのが安全です。

あわせて読みたい

参照した公式資料

  • Google Cloud ドキュメント「Gemini を使用してクエリを作成する」(BigQuery) https://cloud.google.com/bigquery/docs/write-sql-gemini?hl=ja (2026年11月2日確認)
  • Google Cloud ドキュメント「Gemini for Google Cloud におけるデータ ガバナンス」 https://cloud.google.com/gemini/docs/discover/data-governance?hl=ja (2026年11月2日確認)

この記事はアマガジェ編集部(あまと)が作成しました。事実は各公式情報で確認し、原稿作成の一部に生成AIを活用しています。

FOLLOW AMATO

AMATOを、SNSでも。

いつも使うSNSから、AMATOのプロフィールへ。