UPDATE [LOW_PRIORITY] [IGNORE] nome_tabela
    SET nome_coluna1=expr1 [, nome_coluna2=expr2 ...]
    [WHERE definição_where]
    [ORDER BY ...]
    [LIMIT row_count]
ou
UPDATE [LOW_PRIORITY] [IGNORE] nome_tabela [, nome_tabela ...]
    SET nome_coluna1=expr1 [, nome_coluna2=expr2 ...]
    [WHERE definição_where]
        UPDATE atualiza uma coluna em registros de
        tabelas existentes com novos valores. A cláusula
        SET indica quais colunas modificar e os
        valores que devem ser dados. A cláusula
        WHEREi, se dada, especifica quais linhas
        devem ser atualizadas. Senão todas as linhas são atualizadas.
        Se a cláusula ORDER BY é especificada, as
        linhas serão atualizada na ordem especificada.
      
        Se você especificar a palavra-chave
        LOW_PRIORITY, a execução de
        UPDATE e atrasada até que nenhum outro
        cliente esteja lendo da tabela.
      
        Se você especificar a palavra-chave IGNORE,
        a instrução não será abortada memso se nós obtermos erros
        de chaves duplicadas durante a atualização. Linhas que causem
        conflitos não serão atualizadas.
      
        Se você acessa um coluna de nome_tabela em
        uma expressão, UPDATE utiliza o valor atual
        da coluna. Por exemplo, a seguinte instrução define a coluna
        age com o valor atual mais um:
      
mysql> UPDATE persondata SET age=age+1;
        Atribuiçãoes UPDATE são avaliadas da
        esquerda para a direitat. Por exemplo, a seguinte instrução
        dobra a coluna age e então a incrementa:
      
mysql> UPDATE persondata SET age=age*2, age=age+1;
Se você define uma coluna ao valor que ela possui atualmente, o MySQL notará isto é não irá atualizá-la.
        UPDATE retorna o número de linhas que forma
        realmente alteradas. No MySQL Versão 3.22 ou posterior, a
        função mysql_info() da API C retorna o
        número de linhas encontradas e atualizadas e o número de
        avisos que ocorreram durante o UPDATE.
      
        A partir do MySQL versão 3.23, você pode utilizar
        LIMIT row_count para restringir o escopo do
        UPDATE. Uma cláusula
        LIMIT funciona da seguinte forma:
      
            Antes do MySQL 4.0.13, LIMIT é uma
            restrição que afeta as linhas. A instrução para assim
            que altera row_count linhas que
            satisfaçam a cláusula WHERE.
          
            Da versão 4.0.13 em diante, LIMIT é uma
            restrição de linhas correspondentes. A instrução para
            assim que ela encontrar row_count linhas
            que satisfaçam a cláusula WHERE, tendo
            elas sido alteradas ou não.
          
        Se uma cláusula ORDER BY é utilizada
        (disponível no MySQL 4.0.0), as linhas serão atualizadas nesta
        ordem. Isto só é util em conjunto com
        LIMIT.
      
        A partir da MySQL Versão 4.0.4, você também pode realizar
        operações UPDATE que cobrem múltiplas
        tabelas:
      
UPDATE items,month SET items.price=month.price WHERE items.id=month.id;
        O exemplo mostra um inner join usando o operador de vírgula,
        mas instruções UPDATE multi-tabelas podem
        usar qualquer tipo de join permitida na instrução
        SELECT, como LEFT JOIN.
      
        Nota: você não pode utilizar ORDER BY ou
        LIMIT com multi-tabelas
        UPDATE.
      
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

