UPDATE

更新时间:
复制为 MD 格式

UPDATE语句用于更新表中符合条件的行,本文介绍了相关语法及限制。

语法

  • 单逻辑表

    UPDATE [LOW_PRIORITY] [schema_name.]tbl_name
        SET assignment_list
        [WHERE where_condition]
    
    value:
        {expr | DEFAULT}
    
    assignment:
        col_name = value
    
    assignment_list:
        assignment [, assignment] ...
  • 多逻辑表

    UPDATE [LOW_PRIORITY] table_references
        SET assignment_list
        [WHERE where_condition]         
说明
  • UPDATE的修饰符若设置为LOW_PRIORITY,UPDATE操作将在该表没有任何读操作之后执行。

  • UPDATE语句中的修饰符均会原样下推至存储层MySQL,不会对PolarDB-X的修饰符操作产生影响。

语法限制

与原生MySQLUPDATE语法相比,PolarDB-XUPDATE语法存在以下限制。

不支持在SET子句中使用子查询(相关子查询和非相关子查询),例如:

UPDATE t1 SET name = (SELECT name FROM t2 WHERE t2.id = t1.id) WHERE id > 10;
说明

t1t2的拆分键为ID。

相关文献

MySQL UPDATE语法。