求一段SQL 需求是:用A表的column1 去匹配B表的一个区间columnX,columnY,得到B表的columnZ,然后用B的columnZ 修改A表的Column2 字段的类型都是number,A和B表没关系请问这个要怎么写?谢谢了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 需求说的不太清楚,我刚好弄过一个测试例子,你看下是不是差不多这样的: -- Create tablecreate table EMPLOYEE( EMPNO NUMBER(4), ENAME VARCHAR2(10), SAL NUMBER(7,2), REMARK NUMBER(2));insert into employee (EMPNO, ENAME, SAL)values (7369, 'SMITH', 990.00);insert into employee (EMPNO, ENAME, SAL)values (7499, 'ALLEN', 1980.00);insert into employee (EMPNO, ENAME, SAL)values (7521, 'WARD', 1595.00);insert into employee (EMPNO, ENAME, SAL)values (7566, 'JONES', 2975.00);insert into employee (EMPNO, ENAME, SAL)values (7654, 'MARTIN', 1595.00);insert into employee (EMPNO, ENAME, SAL)values (7698, 'BLAKE', 3245.00);insert into employee (EMPNO, ENAME, SAL)values (7782, 'CLARK', 3260.95);insert into employee (EMPNO, ENAME, SAL)values (7839, 'KING', 6050.00);insert into employee (EMPNO, ENAME, SAL)values (7844, 'TURNER', 1870.00);insert into employee (EMPNO, ENAME, SAL)values (7876, 'ADAMS', 1200.00);insert into employee (EMPNO, ENAME, SAL)values (7900, 'JAMES', 1270.50);insert into employee (EMPNO, ENAME, SAL)values (7902, 'FORD', 3000.00);insert into employee (EMPNO, ENAME, SAL)values (7934, 'MILLER', 1694.00);insert into employee (EMPNO, ENAME, SAL)values (7788, 'SCOTT', 2720.00);-- Create tablecreate table SALGRADE( GRADE NUMBER, LOSAL NUMBER, HISAL NUMBER);insert into SALGRADE (GRADE, LOSAL, HISAL)values (1, 700, 1200);insert into SALGRADE (GRADE, LOSAL, HISAL)values (2, 1201, 1400);insert into SALGRADE (GRADE, LOSAL, HISAL)values (3, 1401, 2000);insert into SALGRADE (GRADE, LOSAL, HISAL)values (4, 2001, 3000);insert into SALGRADE (GRADE, LOSAL, HISAL)values (5, 3001, 9999);update employee e1 set re=(select grade from salgrade swhere e1.sal between s.losal and s.hisal); oracle中查表时字符串是不是加单引号或者双引号都行啊,二者有啥区别吗 表 按内容查询 求分析,oracle sequence 自增序列问题 多个关联求SUM 问题 100分结贴在线等 无法再次安装Oracle9i 初学者安装9I问题特多,请高手帮忙! 急急急!怎样实现这样的动态的交叉报表!请高手指教^_^ 如何将.c文件反编译为.pc文件???有工具可用吗?谢谢! 触发器问题 oracle多个关键字模糊查询问题 oracle 向上取一位小数 在线等。分组后取每一组条的第一条数据
-- Create table
create table EMPLOYEE
(
EMPNO NUMBER(4),
ENAME VARCHAR2(10),
SAL NUMBER(7,2),
REMARK NUMBER(2)
);
insert into employee (EMPNO, ENAME, SAL)values (7369, 'SMITH', 990.00);
insert into employee (EMPNO, ENAME, SAL)values (7499, 'ALLEN', 1980.00);
insert into employee (EMPNO, ENAME, SAL)values (7521, 'WARD', 1595.00);
insert into employee (EMPNO, ENAME, SAL)values (7566, 'JONES', 2975.00);
insert into employee (EMPNO, ENAME, SAL)values (7654, 'MARTIN', 1595.00);
insert into employee (EMPNO, ENAME, SAL)values (7698, 'BLAKE', 3245.00);
insert into employee (EMPNO, ENAME, SAL)values (7782, 'CLARK', 3260.95);
insert into employee (EMPNO, ENAME, SAL)values (7839, 'KING', 6050.00);
insert into employee (EMPNO, ENAME, SAL)values (7844, 'TURNER', 1870.00);
insert into employee (EMPNO, ENAME, SAL)values (7876, 'ADAMS', 1200.00);
insert into employee (EMPNO, ENAME, SAL)values (7900, 'JAMES', 1270.50);
insert into employee (EMPNO, ENAME, SAL)values (7902, 'FORD', 3000.00);
insert into employee (EMPNO, ENAME, SAL)values (7934, 'MILLER', 1694.00);
insert into employee (EMPNO, ENAME, SAL)values (7788, 'SCOTT', 2720.00);
-- Create table
create table SALGRADE
(
GRADE NUMBER,
LOSAL NUMBER,
HISAL NUMBER
);
insert into SALGRADE (GRADE, LOSAL, HISAL)values (1, 700, 1200);
insert into SALGRADE (GRADE, LOSAL, HISAL)values (2, 1201, 1400);
insert into SALGRADE (GRADE, LOSAL, HISAL)values (3, 1401, 2000);
insert into SALGRADE (GRADE, LOSAL, HISAL)values (4, 2001, 3000);
insert into SALGRADE (GRADE, LOSAL, HISAL)values (5, 3001, 9999);update employee e1
set re=(
select grade from salgrade s
where e1.sal between s.losal and s.hisal
);