sal

oracle多表insert语句的使用

早过忘川 提交于 2020-03-08 11:26:09
oracle从9i开始可以用一条insert语句实现向多个表中插入数据: INSERT [ALL] [conditional_insert_clause] [insert_into_clause values_clause](subquery) subquery:子查询语句,可以是任何合法的select语句 conditional_insert_clause如下: [ALL][FIRST] [WHEN condition THEN][insert_into_clause values_clause] [ELSE] [insert_into_clause values_clause] 此语法包含了无条件和有条件两种情况: 无条件INSERT ALL: INSERT ALL INTO sal_history VALUES(EMPID,HIREDATE,SAL) INTO mgr_history VALUES(EMPID,MGR,SAL) SELECT employee_id EMPID,hire_date HIREDATE,salary SAL,manager_id MGR FROM employees WHERE employee_id>200; 因为没有附加任何限制于检索出的记录,所以所有检出返回数据将根据其列名插入相应的表中。 有条件的INSERT ALL: INSERT ALL

oracle中的insert语句

烈酒焚心 提交于 2020-03-08 11:22:58
oracle中的insert语句 http://blog.sina.com.cn/s/blog_511364b10100plax.html 关键字: ORACLE insert into table oracle中的insert语句 在oracle中使用DML语言的insert语句来向表格中插入数据,先介绍每次只能插入一条数据的语法 INSERT INTO 表名(列名列表) VALUES(值列表); 注意: 当对表中所有的列进行赋值,那么列名列表可以省略,小括号也随之省略必须对表中的非空字段进行赋值 具有默认值的字段可以不提供值,此时列名列表中的相应的列名也要省略 举例:有如下表格定义 create table book(bookid char(10) not null , name varchar2(60),price number(5,3)) 使用下面的语句来插入数据 INSERT INTO BOOK(bookid,name,price) VALUES('100123','oracle sql',54.70); INSERT INTO BOOK VALUES('100123','oracle sql',54.70); INSERT INTO BOOK(bookid) VALUES('100123'); 由于bookid是非空,所以,对于book来说,至少要对bookid进行赋值

oracle数据库之子查询

匆匆过客 提交于 2020-03-02 20:41:31
子查询也叫内部查询 , 在主查询之前执行一次 并 得到结果 , 此结果一般情况下,是用来当做是主查询的条件。 -- 在 emp 表中,找出工资比 ALLEN 的高? -- 先查出 ALLEN 的工资是多少? select sal from scott.emp where ename = 'ALLEN'; -- 1600 -- 然后再做比较 select * from scott.emp where sal > 1600; -- 整合 select * from scott.emp where sal > (select sal from scott.emp where ename = 'ALLEN'); -- 当我们做了子查询之后,会出现多行数据 -- 如果想要做多行比较 -- in :与列表中的任何一个值相等,简单理解,只要在指定范围内即可 -- any :与子查询返回的 任意一个可能的 值进行比较。 -- all :与子查询返回的所有值进行比较。 -- in 相当于使用 = 号 select * from scott.emp where sal in (select sal from scott.emp where ename = 'ALLEN'); -- 使用子查询方式实现多表查询 select * from ( select deptno, count(*), sum

oracle hints的用法总结

僤鯓⒐⒋嵵緔 提交于 2020-03-02 19:46:03
1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 例如: SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT'; 2. /*+FIRST_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化. 例如: SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT'; 3. /*+CHOOSE*/ 表明如果数据字典中有访问表的统计信息,将基于开销的优化方法,并获得最佳的吞吐量;如果数据字典中没有访问表的统计信息,将基于规则开销的优化方法; 例如: SELECT /*+CHOOSE*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT'; 4. /*+RULE*/ 表明对语句块选择基于规则的优化方法. 例如: SELECT /*+ RULE */ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT'; 5. /*+FULL(TABLE)*/ 表明对表选择全局扫描的方法. 例如:

思科谈OpenDaylight

馋奶兔 提交于 2020-03-02 14:05:45
虽然依旧能在市场上看到思科的可扩展网络控制器(XNC),但是你可能已经注意到思科在最近的一段时间内,一直在谈论其开放SDN控制器(替代XNC)。 显然,思科拥有了基于OpenDaylight氢版本的其他控制器,XNC已经到了退出历史的舞台的时刻。那么该控制器对OpenDaylight架构做了哪些根本性的改变在下面我们将谈到。 OpenDaylight 的核心 思科的开放SDN控制器的变化在控制平台的服务抽象层,位于南向接口之上,如OpenFlow。这意味着隔离了应用程序所在的北向接口。这样,应用程序和网络设备端都可以与抽象层进行交互,这意味着你不需要担心是否一个应用程序知道如何与特定的设备交流。 2014年初发布了OpenDaylight的第一个版本——氢,使用了由API驱动的服务抽象层(AD-SAL),由思科XNC构造。但是AD-SAL模式有其局限性,也就是它需要知道网络中设备所有的类型。如果要引入一个新的接口,必须要更新更新设备的驱动和控制器。 所以即使推出了OpenDaylight氢版本,思科仍然帮助推动另一种模式:模型驱动的服务抽象层(MD-SAL)。MD-SAL的关键是Yang模型而不是设备APIs。应用程序可以向模型请求更新,然后抽象层向网络设备转发请求。 在这个模型中,控制器不需要识别网络设备的类型。该模型还能使OpenDaylight更模块化;开发团队可以独立工作

sql--DQL_函数

巧了我就是萌 提交于 2020-03-02 11:38:32
一、函数的分类: 1、单行函数: 输入一行数据,每一行都会返回一个结果。 a、字符函数 :输入的是字符,返回的也是字符 常见的函数(upper 、lower、initcap首字母大写、concat、length(按字符来统计)、lengthb(按字节的方式来统计)、lengthc(按照的是unique码统计)、substr、instr、trim、ltrim、rtrim、replace b、数值函数:abs, mod, trunc, round, ceil ,floor c、日期函数 :输入的是一个日期返回的是日期或数值 sysdate , months_between (距某个日期相隔了几个月),add_months , next_day, last_day ,trunc d、转换函数 :to_char , to_number, to_date e、通用函数 :nvl , nvl2 ,nullif f、分支函数 : decode() ,case...when...then g、正则表达式函数 :regexp_substr,regexp_instr,regexp_like 2、多行函数/聚合函数/分组函数: 输入多行,返回的结果为一行 count(),sum(),avg()平均值,max(),min(),group by 分组, having 分组或筛选,rollup滚动函数

JAVA集合 - ArrayList

删除回忆录丶 提交于 2020-02-29 00:00:01
集合可实现增删改查,下面的项目用ArrayList集合来做实例,ArrayList集合几个常用的函数   .size()  集合大小   .add()  添加对象到集合   .remove() 删除集合的对象 用到的其他函数   .equals() 字符串比较   System.exit(-1) 退出系统,非零 1 /* 2 * 作者:白客C 3 * 时间:2020年02月28日 4 * 内容:简单员工管理系统 5 */ 6 7 package com.beekc.www; 8 import java.io.*; 9 import java.util.*; 10 11 public class Beekc { 12 public static void main(String[] args) throws Exception{ 13 14 //创建EmpManage 15 EmpManage em = new EmpManage(); 16 17 //输入流 18 InputStreamReader isr = new InputStreamReader(System.in); 19 BufferedReader br = new BufferedReader(isr); 20 21 //简易菜单 22 em.menu(); 23 while (true) 24 { 25 26

2018.5.27 OraclePLSQL编程 if-else练习和循环结构练习

三世轮回 提交于 2020-02-28 14:03:58
if-else运用 declare v_num number(8); begin v_num :=&n; if v_num>0 and v_num<100 then dbms_output.put_line('工薪阶级'); elsif v_num between 100 and 200 then dbms_output.put_line('中产阶级'); else dbms_output.put_line('资本家'); end if; end; case运用 declare v_num number(8) :=&n; v_result varchar2(15); begin case when v_num =1 then v_result :='剪刀'; when v_num =2 then v_result :='石头'; when v_num =3 then v_result :='布'; else v_result :='输入的数字无效'; end case; dbms_output.put_line(v_result); end; --案例:1-10输出(loop循环实现) declare i number(8) :=1; begin loop dbms_output.put_line(i); exit when i =10; --改变初始值 i := i+1; end

Oracle存储过程

安稳与你 提交于 2020-02-27 21:57:00
http://blog.csdn.net/u013057786/article/details/17165623 Oracle存储过程 2013-12-06 13:11 807人阅读 评论 (0) 收藏 举报 oracle 一、 存储过程 1、定义 所谓存储过程(Stored Procedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过 编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储过程参数 来调用并执行它,从而完成一个或一系列的数据库操作。 2、存储过程的创建 Oracle存储过程包含三部分:过程声明,执行过程部分,存储过程异常。 (1) 无参存储过程语法 Sql代码 create or replace procedure NoParPro as //声明 ; begin // 执行 ; exception//存储过程异常 ; end; (2) 带参存储过程实例 Sql代码 create or replace procedure queryempname(sfindno emp.empno%type) as sName emp.ename%type; sjob emp.job%type; begin .... exception .... end; (3) 带参数存储过程含赋值方式 Sql代码 create or

Oracle实战笔记(第六天)之PL/SQL基础

╄→гoц情女王★ 提交于 2020-02-27 12:28:27
一、PL/SQL介绍   1、概念    PL/SQL也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL)。PL/SQL是Oracle数据库对SQL语句的 扩展 。在普通SQL语句的使用上 增加了编程语言的特点 ,所以PL/SQL可以用来编写存储过程、存储函数、触发器等等。 PL/SQL是结构化SQL,就是在标准SQL中加入了IF...ELSE... For....等控制过程的SQL。   2、学习必要性 提高程序的运行性能 传统的使用程序操作数据库的方式需要获得connection,然后程序传到数据库后还需要进行编译才能执行,而且执行结果还需要回调,这些过程都需要花费时间。而PL/SQL编程可以直接进行过程编程,这就节省了数据连接、语句传送和编译的时间,同时编程结果可以被外部程序调用。 模块化的设计思想 很多复杂的过程都需要传送和执行大量的sql语句,比如分页的过程、实现订单的过程、转账的过程等等,这些过程就可以通过PL/SQL进行模块化整理进而方便管理。 减少网络传输量 提高安全性   PL/SQL的缺点在于移植性不好,如果项目不再使用Oracle来管理数据,那么需要重新编写语句。 二、开发工具   1、Oracle自带的命令行工具sql*plus    下面举一个运用PL/SQL语句的案列:编写一个存储过程,并执行。   简单说一下,