mysql update语句使用办法总括

上边大器晚成段代码给我们介绍Mysql
根据叁个表数据更新另三个表的一点字段,具体代码如下所示:

在mysql中update
语句是用来更新钦命数据库中表的笔录,也得以批量翻新,它能够结合mysql
update where条件来钦命要立异那二个数据,上边笔者来给诸位同学介绍介绍。

Mysql跨表更新

DROP TABLE IF EXISTS T_U_TEMPLATE;-- 模版表CREATE TABLE T_U_TEMPLATE ( ID INT NOT NULL AUTO_INCREMENT comment '模版表ID', TEMPLATE_CODE VARCHAR(50) BINARY comment '模版编码', TEMPLATE_NAME VARCHAR(300) BINARY comment '模版名称', CREATE_TIME datetime DEFAULT NULL COMMENT '创建时间', CREATE_BY varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建者' , UPDATE_BY varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT '更新者' , UPDATE_DATE datetime COMMENT '更新时间' , constraint PK_U_TEMPLATE primary key (ID))DEFAULT CHARSET=utf8 comment '模版表';DROP TABLE IF EXISTS TEMPLATE_TEMP_CREATE;-- 模版临时表CREATE TABLE TEMPLATE_TEMP_CREATE ( ID INT NOT NULL AUTO_INCREMENT comment '模版表ID', OBJECT_ID VARCHAR(50) BINARY comment '模版编码', OPERATER_NAME varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新者' , CREATE_TIME datetime NOT NULL COMMENT '更新时间' , constraint PK_U_TEMPLATE primary key (ID))DEFAULT CHARSET=utf8 comment '模版临时表';-- 修改创建人创建时间到T_U_TEMPLATE表UPDATE T_U_TEMPLATE a,TEMPLATE_TEMP_CREATE b SET a.CREATE_TIME=b.CREATE_TIME WHERE a.TEMPLATE_CODE = b.OBJECT_ID;UPDATE T_U_TEMPLATE a,TEMPLATE_TEMP_CREATE b SET a.CREATE_BY=b.OPERATER_NAME WHERE a.TEMPLATE_CODE = b.OBJECT_ID ;

MySQL update 语句根底用法

 

总结

立异数据库中的数据

假使大家有两张表,一张表为Product表寄放付加物音讯,在那之中有付加物价格列Price;其它一张表是ProductPrice表,我们要将ProductPrice表中的价格字段Price更新为Price表中价位字段的70%。 

上述所述是笔者给我们介绍的Mysql
依照一个表数据更新另四个表的少数字段,希望对大家有所帮忙,假使我们有别的疑问请给本身留言,笔者会及时回复大家的。在这也非常感激咱们对台本之家网址的支撑!

UPDATE 语句用于在数据库表中期维改革数据。

在Mysql中大家有二种手段能够完成那点,风度翩翩种是update table1 t1, table2 ts
…的点子: 

语法

代码如下:

 代码如下

 

复制代码

UPDATE product p, productPrice pp 
SET pp.price = pp.price * 0.8 
WHERE p.productId = pp.productId 
AND p.dateCreated < '2004-01-01' 

UPDATE table_name
SET column_name = new_value
WHERE column_name = some_value

 

 

倘让你在八个表明式中经过tbl_name访问一列,则UPDATE使用列中的当前值。举个例子,以下语句把年纪列设置为比这两天值多后生可畏:

别的意气风发种办法是选取inner join然后翻新: 

 代码如下

代码如下:

复制代码

 

MySQL> UPDATE persondata SET ageage=age+1;

UPDATE product p 
INNER JOIN productPrice pp 
ON p.productId = pp.productId 
SET pp.price = pp.price * 0.8 
WHERE p.dateCreated < '2004-01-01' 

MySQL
UPDATE赋值被从左到右评估。比如,以下语句对年龄列加倍,然后再拓宽追加: