当前位置: 首页 > 图文教程 > 数据库 > MSSQL > MySql教程:两个表之间更新数据

MSSQL
SQL查询结果集对注入的影响及利用
Access入门:Access的特点及其概念问答
关于SQL注入的几类错误和产生的原理
使用SQL语句取随机数的方法
SQL教程:提高SQL执行效率的几点建议
SQL Server数据库常用的T-SQL命令
实战:全面了解SQLServer注入过程
SQL Server 2000的SA密码被破解实例
union组合结果集时的order问题
MSSQL汉字转拼音函数实现语句
sqlserver 中ntext字段的批量替换(updatetext的用法)
sqlserver 常用存储过程集锦
MSSQL 删除数据库里某个用户所有表里的数据
MSSQL 多字段根据范围求最大值实现方法
MSSQL 首字母替换成大写字母
MSSQL 提取汉字实现语句
sqlserver 字符串分拆 语句
实现按关健字模糊查询,并按匹配度排序的SQL语句
SQLSERVER中union,cube,rollup,cumpute运算符使用说明
sqlserver 禁用触发器和启用触发器的语句

MSSQL 中的 MySql教程:两个表之间更新数据


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 223 ::
收藏到网摘: n/a

有两个表,结构如下:

a(id,sex,email,public)

b(id,depart,salary)

由于需求改变,要为 b 也增加一个 public 字段,并且和 a 表中 id 相同的记录中的 public 的值相同。

加一个字段比较容易,直接 alter就行了,但是表间更新数据以前没做过,就google 之,结果发现很多人都是这么写的:

UPDATE b SET public=a.public FROM a WHERE b.id=a.id

但是在Mysql 下面死活不好使,总是提示有错误,后来查了一下资料,发现 mysql 不支持 update 里面有 from 子句,网上很多人写的可能都是针对 sqlserver 或其他数据库的。改写SQL 如下:

UPDATE b,a SET b.public=a.public WHERE b.id=a.id

学到一点东西,记录在此。