更新<一个class="headerlink" href="//www.neidfyre.com/docs/spark/latest/spark-sql/language-manual/#update" title="">

适用于:检查标记是的砖的SQL检查标记是的砖运行时

更新的列值行匹配谓词。当没有提供谓词,更新的列值的行。

这种说法只支持三角洲湖表。

语法<一个class="headerlink" href="//www.neidfyre.com/docs/spark/latest/spark-sql/language-manual/#syntax" title="">

更新table_name(table_alias]{{column_name|field_name}=(expr|默认的}(,](在哪里条款]

参数<一个class="headerlink" href="//www.neidfyre.com/docs/spark/latest/spark-sql/language-manual/#parameters" title="">

  • table_name

    标识表更新。表名不能使用<一个class="reference internal" href="//www.neidfyre.com/docs/spark/latest/spark-sql/language-manual/sql-ref-names.html">时间规范

  • table_alias

    为表定义一个别名。别名必须不包括列清单。

  • column_name

    引用表中的一列。你可以参考每一列最多一次。

  • field_name

    引用字段在一个结构体类型的列。你可以参考每个字段最多一次。

  • expr

    一个任意的表达式。如果你参考table_name列代表行之前的状态更新。

  • 默认的

    适用于:检查标记是的砖的SQL<一个class="reference internal" href="//www.neidfyre.com/docs/spark/latest/spark-sql/release-notes/index.html">SQL仓库2022.35版本或更高版本检查标记是的砖运行时11.2及以上

    默认的列的表达式如果一个定义,否则空。

  • 在哪里

    通过谓词过滤行。的在哪里条款可能包括子查询以下异常:

    • 内嵌套的子查询,子查询另一个查询

    • 一个子查询在一个例如,一个=3b(选择ct)

    在大多数情况下,您可以重写子查询使用存在。你应该使用存在只要有可能,如更新子查询可以缓慢。

例子<一个class="headerlink" href="//www.neidfyre.com/docs/spark/latest/spark-sql/language-manual/#examples" title="">

>更新事件eventType=“点击”在哪里eventType=“时钟”>更新all_eventssession_time=0,忽略了=真正的在哪里session_time<(选择最小值(session_time)good_events)>更新订单作为t1order_status=“返回”在哪里存在(选择oidreturned_orders在哪里t1oid=oid)>更新事件类别=“定义”在哪里类别(选择类别events2在哪里日期>“2001-01-01”)>更新事件忽略了=默认的在哪里eventType=“未知”