Oracle学习记录 三 多语句

  1. UNION和UNION ALL

select deptno from emp

union

select deptno from dept;

相当于这两个结果取并集,union去掉重复的,union all保留重复的

2. intersect

select deptno from emp

intersect

select deptno from dept;

这相当于两个结果取交集。

3. minus

select deptno from dept

minus

select deptno from emp;

这和上面的两个有区别,第一个先用的dept,第二个是emp,这个的意思是取出dept中的结果,如果emp中也有这个

那么就去掉这个。

4. 一个结果集作为另一个的源

select sum(sal) from emp

where deptno in

(select deptno from dept

where loc=‘DALLAS‘);

loc为DALLAS的deptno的sal和

5. exists

select deptno from dept

where exists

(select deptno from emp

where deptno=40);

这个是如果括号内的语句有结果,那么就执行外面的语句,如果没有就不执行,这里就不会执行,因为emp中deptno没有40

这个值。

6. case

select deptno, case deptno

when 10 then sal+100

when 20 then sal - 100

else sal

end

"new sal"

from emp;

这就相当于if else,分情况处理

时间: 2024-08-17 14:54:49

Oracle学习记录 三 多语句的相关文章

Oracle学习笔记三 SQL命令

SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)               下面是这四种SQL语言的详细笔记: Oracle学习笔记三 SQL命令(二):SQL操作语言类别 Oracle数据类型 创建表时,必须为各个列指定数据类型 以下是 Oracle 数据类型的类别: 字符数据类型 CHAR类型 当需要固定长度的字符串时,使用 CHAR 数据类型. CHAR 数据类型存储字母数字值. CH

oracle学习 第三章 常用的SQL*PLUS命令 ——02

今天接着昨天的RUN命令继续讲. 3.5 n(设置当前行)命令和A(PPEND)(附加)命令 设想,你输入了例3-10的查询语句 例 3-10 SQL> SELECT ename 2 FROM emp; 例 3-10 结果 看到以上输出时,您发现在SELECT子句中忘了job,sal.这时您又如何修改您的SELECT子句呢?首先您应该使用SQL*PLUS的L(LIST)命令来显示SQL缓冲中的内容. 例 3-11 SQL> L 例 3-11 结果 在例3-11显示的结果中,2后面的"

Spring Boot学习记录(三)--整合Mybatis

Spring Boot学习记录(三)–整合Mybatis 标签(空格分隔): spring-boot 控制器,视图解析器前面两篇都已弄好,这一篇学习持久层框架整合. 1.数据源配置 数据源使用druid,maven引入相关依赖,包括spring-jdbc依赖,mysql依赖 1.转换问题 配置的过程要学会为什么这样配置,而不是只学会了配置.这里我们可以和以前的配置方式对比: 以前版本 <!--配置数据库连接池Druid--> <bean id="dataSource"

Windows API 编程学习记录&lt;三&gt;

恩,开始写API编程的第三节,其实马上要考试了,但是不把这节写完,心里总感觉不舒服啊.写完赶紧去复习啊       在前两节中,我们介绍了Windows API 编程的一些基本概念和一个最基本API函数 MessageBox的使用,在这节中,我们就来正式编写一个Windows的窗口程序. 在具体编写代码之前,我们必须先要了解一下API 编写窗口程序具体的三个基本步骤:             1. 注册窗口类:             2.创建窗口:             3.显示窗口: 恩,

Oracle 学习(三)多表联查

目录 Oracle 学习(三)多表联查 一.99语法 二.至少两种方式行转列 三.分页 Oracle 学习(三)多表联查 @ 一.99语法 Oracle学习(二)中我们学习了92语法,现在我们学习一下99语法 sql 1999语法 1.1.cross join 笛卡尔积 select * from emp cross join dept; 1.2.natural join 自然连接 当两个表不具有相同列名,进行cross join,具有相同列名,自动匹配 select * from emp e

[转]Oracle学习记录 九 Prc C学习

经过前面的了解,现在想用C语言来编程了,搜索了很多东西,后来决定先用Pro C来进行学习 在安装完Oracle数据库后就可以进行编程了,里面有一个命令proc就是对程序进行预编译的. 在这记一下,这是一个学习PL/SQL的网站,挺好的 http://www.cnblogs.com/huyong/archive/2012/07/30/2614563.html 创建用户是 create user xx identified by xx account unlock; grant connect, r

oracle 学习笔记(三)

1. SQL(基础查询) 1.1. 基本查询语句 1.1.1. FROM子句 SQL查询语句的语法如下: SELECT <*, column [alias], -> FROM table; 其中:SELECT用于指定要查询的列,FROM指定要从哪个表中查询.如果要查询所有列,可以在SELECT后面使用*号,如果只查询特定的列,可以直接在SELECT后面指定列名,列名之间用逗号隔开.例句如下,查询dept表中的所有记录: SELECT * FROM dept; 1.1.2. 使用别名 在SQL语

Mybatis学习记录(三)--Mybatis配置文件详解

关于mybatis的配置文件,主要有两个,一个是SqlMapperConfig.xml文件一个是mapper.xml文件,分别对这两个进行深入全面学习. 一.SqlMapperConfig.xml文件 1.标签概况 在SqlMapperConfig.xml中主要有以下标签,其中环境集合environments和spring整合后废除不用.objectFactory和plugins不经常使用. properties(属性) settings(全局配置参数) typeAliases(类型别名) ty

Oracle学习第三篇—多行函数

0 order by asc/desc 默认升序 order by 列的名字|表达式|别名|序号 把空放在后边:order by desc nulls last 1分组函数--会自动滤空值 count(*|distinct|clumn) max min sum avg select sum(comm)/count(*) 一, sum(comm)/count(comm) 二,avg(comm) 三from emp 2 过滤解决,空值替换函数,NVL(comm,0) 1 select count(*