sql学习之:mysql里关于update from

来源:互联网 发布:我是大美人官网淘宝网 编辑:程序博客网 时间:2024/05/22 07:51
表table如下:idcodename1c1null2c1c1name3c2null4c2c2name5c3c3name6c4null


要求:把table里面对于相同的code的null值用不为null的值赋值。

例:id=1和id=2的code值一样,把id=1的name,update为id为2的name值. 


在系统sybase里面用下面的sql语句,可以测试成功:

update a set a.name= b.namefrom table a,tabel bwhere a.code = b.code and a.name is null and b.name is not null

但在我的mysql数据库测试半天都不成功。后面在网上看到说mysql 不支持 update 子查询更新。

新语句如下:

update table a inner join table b on a.code=b. code set a. name =b. name where a. code is not null and b.i name is not null

将对table的别名a,b放到了前面。前几天发现mysql的gruop by的说明是返回唯一值,返回的结果集是删除了重复项。但sybase里面却行不通。纠结。