易截截图软件、单文件、免安装、纯绿色、仅160KB

求SQL语句

有表emp(empno,ename,sal,deptno)字段分别是员工编号、员工姓名、薪水、部门编号
dept(deptno,dept_name,manager)字段分别是部门编号、部门名称、经理,
现在要将部门平均薪水< 1000的员工的薪水涨一倍;

谁有思路吗?
谢谢!
SQL code:

--我的理解是将部门平均薪水<1000的那些部门的员工的薪水都涨一倍,不知理解对不对?
--下面是语句
update emp a
set a.sal = 2 * a.sal
where exists (select 1
from (select e.deptno, avg(e.sal) avgsal
from emp e
group by e.deptno) b
where b.deptno = a.deptno
and avgsal < 1000);



SQL code:

--如果使用in可以这样写,与上面的等价
update emp a
set a.sal = 2 * a.sal
where a.deptno in (select b.deptno
from (select e.deptno, avg(e.sal) avgsal
from emp e
group by e.deptno) b
where b.avgsal < 1000);



搞了半天,兄弟,没分?,就只能当练手啦...

也是初学者啊
建议你看看韩顺平的玩转Oracle视频,那里面讲的很好

不会太难的,多看下书呢


相关问答:

关于SQLSERVER底层问题 - MS-SQL Server / 疑难问题

请问一下,外网两台SQLSERVER实例数据传输,有没有采用数据压缩和加密。压缩比是多少,加密是什么加密算法?相关文档哪里可以找到?谢谢


我也想知道!关注此贴!

关注~~

数据库大牛都哪去了啊?
......

C#和数据库SQL - MS-SQL Server / 基础类

我们C#做一个窗体 往数据库里插入数据
  SqlConnection cn = new SqlConnection("Data Source=20090713-1752\\SQLEXPRESS;Initial Catalog=goods;Integrated Security=True");
  ......

一个pl/sql问题 - Oracle / 开发

我是在toad中输入下段sql
  declare
  TYPE test_rec IS record(
  code varchar(10),
  name varchar(30)
  );
  v_book test_rec;
    ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号