在 Gemini 协助下编写 SQL

本文档介绍了如何使用 Gemini Code Assist 在 Bigtable 中获取 AI 赋能的辅助功能,使用自然语言提示生成 SQL 查询

了解 Gemini for Google Cloud 如何以及何时使用您的数据

本文档适用于熟悉 Bigtable、SQL 和数据分析的数据库管理员和数据工程师。如果您是 Bigtable 新手,请参阅快速入门:使用 Google Cloud 控制台创建 Bigtable 实例

限制

  • 您无法在 Bigtable 中使用 Gemini 以自然语言解释 SQL 查询。
  • Gemini in Bigtable 可能会生成在 GoogleSQL for Bigtable 中无效的查询,或者使用以下不受支持的语句或语法的查询:

    • SELECT 以外的数据操纵语言 (DML) 语句,例如 INSERTUPDATEDELETE
    • 数据定义语言 (DDL) 语句,例如 CREATEALTERDROP
    • 数据访问权限控制语句。
    • 子查询、JOINUNION 和 CTE 的查询语法。

    如需了解详情,请参阅 GoogleSQL for Bigtable 概览

准备工作

  1. 在 Google Cloud 项目中启用 Gemini for Google Cloud API

  2. 如需完成本文档中的任务,请确保您拥有必要的 Identity and Access Management (IAM) 权限

  3. 可选:如果您想按照本文档中的示例进行操作,请按照创建测试表中的说明创建并填充 test-table

所需的角色

如需获得完成本文档中的任务所需的权限,请让您的管理员为您授予项目的 Gemini for Google Cloud User (roles/cloudaicompanion.user) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

使用自然语言提示生成 SQL 查询

您可以向 Gemini 提供自然语言注释(或提示),以生成基于您的架构的查询。例如,您可以提示 Gemini 生成 SQL 来回答以下提示:

  • “统计使用 1GB 数据流量套餐的设备数量。”
  • “列出 2019 年 5 月 1 日连接到 Wi-Fi 的所有手机。”
  • “哪些平板电脑已启用 10GB 数据流量套餐?”

如需在 Bigtable 中借助 Gemini 生成 SQL,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,前往 Bigtable 页面。

    转到 Bigtable

  2. 从列表中选择一个实例。

  3. 在导航窗格中,点击 Bigtable Studio

  4. 点击 打开新标签页,然后选择编辑器

  5. 点击 Generate SQL

  6. 帮我编码对话框中,输入提示,然后点击生成

    例如,如果您输入提示 Count the number of devices that have a 1GB data plan.,Gemini 会生成如下所示的 SQL:

    SELECT
        count(*)
    FROM
        `test_table`
    WHERE
        cell_plan['data_plan_01gb'] = 'true'
    
  7. 查看生成的 SQL,然后执行以下任一操作:

    • 如需执行建议的 SQL,请点击插入,然后点击运行
    • 如需修改提示,请点击修改,然后点击更新
    • 如需修改建议的 SQL,请点击插入。在查询构建器中,手动修改查询,然后点击运行
  8. 可选:如需继续使用 test_table 示例,如果您输入提示 Show all data for phones from May 2019.,Gemini 会生成如下所示的 SQL:

    SELECT
        *
    FROM
        `test_table`
    WHERE
        _key LIKE 'phone#%#201905%'
    

后续步骤