MySQL-UPDATE语句
功能介绍:用于更新表中的现有数据。亦可用UPDATE
语句来更改表中单个行,一组行或所有行的列值。
MySQL-UPDATE语法: UPDATE [LOW_PRIORITY] [IGNORE] table_name SET column_name1 = expr1, column_name2 = expr2, ... WHERE condition;
在上面UPDATE
语句中:
第一,在UPDATE
关键字后面指定要更新数据的表名。
第二,SET
子句指定要修改的列和新值。要更新多个列,请使用以逗号分隔的列表。
第三,使用WHERE语句中的条件指定要更新的行。
WHERE
子句是可选的。 如果省略WHERE
子句,则UPDATE
语句将更新表中的所有行。
MySQL-UPDATE多列
更新多列中的值,需要在SET
子句中指定分配。
实例: 更新了员工编号1056的姓氏和电子邮件列: UPDATE employees SET lastname = 'Hill', email = 'mary.hill@yiibai.com' WHERE employeeNumber = 1056;
MySQL-UPDATE JOIN语句
在MySQL中,可以在UPDATE语句中使用JOIN
子句执行跨表更新。
JOIN语句作用:查询表中的行(在INNER JOIN的情况下),
查询另一个表中的相应行 (在LEFT JOIN的情况下)。
UPDATE JOIN语法: UPDATE T1, T2, [INNER JOIN | LEFT JOIN] T1 ON T1.C1 = T2. C1 SET T1.C2 = T2.C2, T2.C3 = expr WHERE condition
UPDATE JOIN语法说明:
第一,在UPDATE
子句之后,指定主表(T1
)和希望主表连接表(T2
)。
第二,指定一种要使用的连接,即INNER JOIN
或LEFT JOIN
和连接条件。JOIN
子句必须出现在UPDATE
子句之后。
第三,要为要更新的T1
和/或T2
表中的列分配新值。
第四,WHERE语句中的条件用于指定要更新的行。
更新数据交叉表的另一种方法:
UPDATE T1,T2 INNER JOIN T2 ON T1.C1 = T2.C1 SET T1.C2 = T2.C2, T2.C3 = expr WHERE condition