oracle使用子查询插入和修改数据
2010-01-29 15:28
489 查看
使用子查询插入数据:
示例一:insert into employee (empno,ename,sal,deptno)
select empno,ename,sal,deptno from emp
where deptno=20;
示例二:insert /*+APPEND*/ into employee (empno,ename,sal,deptno)
select empno,ename,sal,deptno from emp
where deptno=20;
尽管执行结果一样,但第二条语句使用/*+APPEND*/来表示采用直接装载方法可以使执行速度加快。
使用子查询修改数据:
示例一:select job,sal,comm from emp where ename='SMITH';
update emp set job='check',sal=2200,comm=200
where ename='SCOTT';
示例二:update emp set (job,sal,comm)=(
select job,sal,comm from emp where ename='SMITH')
where ename='SCOTT';
这个例子说的是:使雇员SCOTT的岗位、工资、补助与雇员SMITH的完全相同。这时候使用子查询只需要编写一条sql语句就可以完成任务,从而降低了网络开销。
示例一:insert into employee (empno,ename,sal,deptno)
select empno,ename,sal,deptno from emp
where deptno=20;
示例二:insert /*+APPEND*/ into employee (empno,ename,sal,deptno)
select empno,ename,sal,deptno from emp
where deptno=20;
尽管执行结果一样,但第二条语句使用/*+APPEND*/来表示采用直接装载方法可以使执行速度加快。
使用子查询修改数据:
示例一:select job,sal,comm from emp where ename='SMITH';
update emp set job='check',sal=2200,comm=200
where ename='SCOTT';
示例二:update emp set (job,sal,comm)=(
select job,sal,comm from emp where ename='SMITH')
where ename='SCOTT';
这个例子说的是:使雇员SCOTT的岗位、工资、补助与雇员SMITH的完全相同。这时候使用子查询只需要编写一条sql语句就可以完成任务,从而降低了网络开销。
相关文章推荐
- 将查询出来的表数据修改一个或几个字段后,再插入到表中(oracle)
- Oracle使用Mybatis实现批量插入或修改数据(Oracle)
- oracle 存在数据修改 不存在数据插入 使用 MERGE INTO 解决
- SQLlite使用、创建、插入、修改、查询
- oracle使用for循环插入10000条数据
- oracle使用 merge 更新或插入数据(总结)
- Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)
- 使用JDBC插入数据到ORACLE,使用标识列自增列。
- 使用PreparedStatement向数据表中插入、修改、删除、获取Blob类型的数据
- 使用OleDb向acces插入数据或者查询数据发生INSERT INTO 语法错误
- Oracle 通过子查询批量添加、修改表数据
- Oracle使用游标查询指定数据表的所有字段名称组合而成的字符串
- 详解MySQL插入和查询数据的相关命令及语句使用
- 使用JDBC插入数据到ORACLE,使用标识列自增列
- Oracle中merge into的使用:该命令使用一条语句从一个或者多个数据源中完成对表的更新和插入数据.
- 在oracle中插入一条数据,id自动增长,插入之后怎么得到这个id(sequence的使用)
- oracle使用listagg查询电影数据
- 表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询) 1.Oracle表的管理
- Net使用Microsoft.Office.Interop.Excel;创建Excel文件(插入数据、修改格式、生成图表)的方法,以及Excel查看加密
- oracle误删除修改想找回原来数据(Oracle 9i闪回查询的新特性)