在 Gemini 协助下编写 SQL

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

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

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

限制

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

    • 除 SELECT 以外的数据操纵语言 (DML) 语句,例如 INSERT、UPDATE 或 DELETE。
    • 数据定义语言 (DDL) 语句,例如 CREATE、ALTER 或 DROP。
    • 数据访问权限控制语句。
    • 子查询、JOIN、UNION 和 CTE 的查询语法。

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

准备工作

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

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

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

所需的角色

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

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

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

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

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

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

  1. 在 Cloud de Confiance 控制台中,前往 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%'
    

后续步骤