`

oracle 代替 update from

 
阅读更多

可以用子查询代替

update tablea set  a=(select b.a from tableb b,tablea a where a.c=b.c and 限定范围的条件如 b.d in (....))

where exists (select 1 from tableb b,tablea a where a.c=b.c and 限定范围的条件如 b.d in (....))

例如 这里把表 student_history 的操作时间更新成student_graduate 里的bydate一致 (只是其中2个班级的)

update student_history a set operate_date=(select bydate from student_graduate b
where a.class_id=b.class_id
and a.student_id=b.stuid and b.class_id in('ff8080812f52ff02012f8ba5ca053aff','ff8080812f52ff02012f8ba5c9fd3afd'))
where exists (select 1 from student_graduate sg where a.class_id=sg.class_id
and a.student_id=sg.stuid and sg.class_id in('ff8080812f52ff02012f8ba5ca053aff','ff8080812f52ff02012f8ba5c9fd3afd'));

分享到:
评论

相关推荐

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 第一章 Oracle入门 一、 数据库概述 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。简单来说是本身可视...

    韩顺平oracle学习笔记

    2)我想把emp所有的(增,删,改,查/insert,delete,update,select这四个一起可以用all代替) 操作权限赋给leng grant all on emp to leng;(此时登陆用户为scott) 案例2:这时我想把权限收回来怎么办呢, 这时用...

    oracle数据库经典题目

    UPDATE SET T_ID=100 FROM Types WHERE T_Name=’FRUIT’ D. DELET * FROM Types WHERE T_ID=100 AND T_Name=’FRUIT’ 13. 用_____语句修改表的一行或多行数据。( A ) A.Update B.set C.Select D.Where 14. ...

    oracle 常用代码.

    原因是SQL中不区分大小写,MM和mm被认为是相同的格式代码,所以Oracle的SQL采用了mi代替分钟。 select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual; 二、另要以24小时的形式显示出来要用HH24...

    Oracle事例

    select * from ( select rownum row_id,b.* from (select a.* from sys_oper a) b ) where row_id between 15 and 20 15、对公共授予访问权 grant select on 表名 to public; create public synonym 同义词名 ...

    Oracle8i_9i数据库基础

    §7.4 在from 中使用视图 187 第八章 一些高级的用法 188 §8.1 关于DECODE 188 §8.1.1 DECODE 中的if-then-else逻辑 188 §8.1.2 DECODE 的简单例子 188 §8.1.3 DECODE实现表的转置 189 §8.2 关于访问远程数据库...

    Oraclet中的触发器

    ORACLE事件指的是对数据库的表进行的INSERT、UPDATE及DELETE操作或对视图进行类似的操作。ORACLE将触发器的功能扩展到了触发ORACLE,如数据库的启动与关闭等。 1 DML触发器:ORACLE可以在DML语句进行触发,可以在...

    精髓Oralcle讲课笔记

    -- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、...

    经典全面的SQL语句大全

    代替过长的字符串显示  语法:  SQL数据库:select case when len(field)>10 then left(field,10)+'...' else field end as news_name,news_id from tablename  Access数据库:SELECT iif(len(field)>2,left...

    2009达内SQL学习笔记

    如果已有锁则自动退出:Select id,salary From s_emp where id=1 For Update NoWait; FOR UPDATE :可以再加 OF 精确到某格。如: ... For Update OF salary ... 注意要解锁。 五、ORDER BY 子句,排序 Order ...

    mysql数据库的基本操作语法

    注意:alter modify不支持一次修改多个列,但是Oracle支持多列修改 但是MySQL可以通过多个modify的方式完成: alter table user modify tel varchar(15) default '02087654321' first, modify name varchar(20) ...

    PL/SQL 基础.doc

    7) 替代 <scape> <tab> 6. 文字 1)字符型文字(字符串) 'tom' (单引号) 'tom''s pen' ''为2个单引号(标识转义) 为tom's pen 2)数字型 123 -4 +56 0 9.0 1.23E5 9.8e-3 3)布尔型 TRUE FALSE NULL 7. 变量...

    数据库基础

    §7.4 在from 中使用视图 187 第八章 一些高级的用法 188 §8.1 关于DECODE 188 §8.1.1 DECODE 中的if-then-else逻辑 188 §8.1.2 DECODE 的简单例子 188 §8.1.3 DECODE实现表的转置 189 §8.2 关于访问远程数据库...

    springmybatis

    MyBatis 目录(?)[-] mybatis实战教程mybatis in action之一开发环境搭建 mybatis实战教程mybatis in ... select * from user where userName like #{userName} 在 IUserOperation 接口中增加方法:public List...

    asp.net知识库

    Create Tables and Build inserts from Tables by using Mygeneration Templates(Sql Server) C# 获取数据库中某个某个表的创建脚本 DbHelperV2 - Teddy的通用数据库访问组件设计和思考 也论该不该在项目中使用...

    网管教程 从入门到精通软件篇.txt

    它将替代默认的驱动器(即用户登录的系统分区)。例如,驱动器:D:  范例  下列命令范例向驱动器 D: 的系统分区写入新的分区引导扇区:  fixboot d:  注意: 如果不带任何参数,fixboot 命令将向用户登录的...

    C#编程经验技巧宝典

    C#编程经验技巧宝典源代码,目录如下: 第1章 开发环境 1 <br>1.1 Visual Studio开发环境安装与配置 2 <br>0001 安装Visual Studio 2005开发环境须知 2 <br>0002 配置合适的Visual Studio 2005...

Global site tag (gtag.js) - Google Analytics