查询代码片段

复制以前的工作和修改通常比从头开始编写内容更容易。 对于常见的 JOIN 语句或复杂的 CASE 表达式,这尤其如此。 随着查询列表的增长,很难记住哪些查询包含所需的语句。 你还可以创建一个包含插入点的查询代码片段,并在插入点放置用户可以在运行时替换的占位符文本。

查询片段是可以通过自动完成来共享和触发的查询的一部分。 将查询代码片段用于:

  • 常用的 JOIN 语句
  • 复杂子句,例如 WITHCASE
  • 条件格式

下面是代码片段的示例:

--Simple snippet
WHERE fare_amount > 100

--Snippet with an insertion point for a value to be provided at runtime
WHERE fare_amount > ${1:value}

--Snippet with an insertion point for a value to be provided at runtime and containing a default value
WHERE fare_amount > ${1:100}

--Snippet with multiple insertion points
WHERE fare_amount > ${2:min_value} AND fare_amount < ${1:max_value} AND trip_distance < ${0:max_distance}

创建查询片段

可以从 SQL、笔记本或文件编辑器创建查询片段。 执行以下步骤:

  1. 在 SQL 编辑器中,单击 “Kebab”菜单图标。 Kebab 菜单。

    在新 SQL 编辑器中,单击 “Kebab”菜单图标。 烤肉串菜单,然后单击“ 视图”。

    在笔记本或文件编辑器中,单击“ 查看”。

  2. 单击 “查询片段”

  3. 单击 创建查询代码段

  4. 替换 字段中,输入代码片段名称。 编写使用该代码片段的查询时,将使用此名称。

  5. (可选)输入说明。

  6. 代码片段 字段中,输入代码片段。

  7. 单击 创建

    查询代码片段

使用查询代码片段

查询代码片段可用于任何 SQL 查询。 可以在 SQL 编辑器、笔记本 SQL 单元格、SQL 文件和 AI/BI 仪表板查询中访问查询片段。

下面是一个简单的查询示例,可以使用这些查询代码片段:

--Simple query
SELECT * FROM samples.nyctaxi.trips

通过以下步骤在此查询中使用一个查询代码片段:

  1. 打开 SQL 编辑器

  2. 在 SQL 编辑器查询窗格中键入查询。

  3. 开始键入查询代码段的名称,然后从“自动完成”窗口中选择它。

    在 SQL 编辑器中,您还可以通过 Control+Space 手动打开窗口,然后选择代码片段。

    选择代码片段的查询

  4. 使用查询代码片段中的 WHERE 子句执行查询。

    显示查询中使用的代码片段的查询 中使用的代码片段

使用查询代码片段中的插入点

可使用一个美元符号加大括号 ${} 将整数 Tab 键顺序括起来,从而指定插入点。 前面带有一个冒号 : 的文本占位符是可选的,但对不熟悉你的片段的用户来说很有用。 在前面创建的插入点的查询代码片段中, ${1:value} 是包含占位符的插入点,并且 ${1:100} 是一个插入点,其中包含可在运行时重写的占位符的默认值。 当 Databricks SQL 呈现代码片段时,将去除美元符号 $ 和大括号 {} ,并突出显示替换字词 value 或默认值 100

当有多个插入点时,文本插入光标会跳转到第一个插入点,提示输入所需的值。 当您按下 Tab 时,光标会跳到下一个插入点,以便输入下一个数值。 再次按下 Tab 后,光标将跳转到下一个插入点行,直到到达最后一个插入点。

注意

插入点为零 ${0} 始终是 Tab 键顺序中的最后一个点。

通过以下步骤在查询中使用插入点查询代码片段:

  1. 打开 SQL 编辑器

  2. 在 SQL 编辑器查询窗格中键入查询。

  3. 键入查询代码段名称的前三个字母,然后选择包含插入点的查询代码段,而不使用默认值。

    系统会将查询代码片段添加到查询中,文本插入光标将跳转到插入点。

    使用插入点查询代码段进行查询,且没有默认值 使用没有默认值的插入点查询代码片段的查询

  4. 请为 WHERE 子句输入一个值,例如 200

  5. (可选)使用 WHERE 查询代码片段中的子句运行查询。

  6. 重复前面的步骤,但通过默认值来选择包含插入点的查询代码段。

    使用包含默认值的插入点查询代码段的查询 使用包含默认值的插入点查询代码片段的查询

  7. 重复前面的步骤,但选择包含多个插入点的查询代码片段。

    使用包含多个插入点的查询代码段进行查询 使用包含多个插入点的插入点查询代码片段的查询

  8. 输入第一个插入点的值,按 Tab 键进入下一个插入点,然后输入一个值,然后按 Tab 键进入最终插入点并输入一个值。