第一种写法不行,
第二种可以,
Update 员工
Set 月薪=月薪+200
Where 部门号 in
(select 部门号 from 部门 where 部门名='产品部')
第二种可以,
Update 员工
Set 月薪=月薪+200
Where 部门号 in
(select 部门号 from 部门 where 部门名='产品部')
解决方案 »
- unpivot,pivot联合使用列类型不同时,转换失败的问题
- 怎样查找数据库里面除了自增量字段,其他字段一模一样的记录?
- 这样需求的数据库该如何设计?
- 请教:mssql导出问题
- nvarchar like 问题
- 网络版数据库问题!! 谢谢
- 如何指定一个表的所有者(Owner)??
- 急求SQL Server2000中文版的序列号!!!
- 请教各位,有没有SQL2000转到ACCESS的工具?多谢!
- 在SQL Server中怎样把 varchar 型变量转换成 datetime型的
- 如何将原表中无序的id改为有序
- 在SqlServer2008(查询)中,如何把同列同值的数据中,添加一个字段表示成第几行?
set 月薪=月薪+200
where 员工.部门号=部门.部门号 and 部门号='产品部';这里表名根本就没关联到部门表。最好是多看看SQL 语句的语法格式就知道了,上面的也不符合SQL规范
update a
set a.月薪 = a.月薪 + 200
from 员工 a
join 部门 b
on a.部门号 = b.部门号 and b.部门号='产品部';
只在 SQL Server 中可用,在其他数据库可能就不行。
update a
set a.月薪 = a.月薪 + 200
from 员工 a
join 部门 b
on a.部门号 = b.部门号 and b.部门名='产品部';