desc emp; 显示数据库表结构
select empno,ename,sal*12 from emp;
EMPNO ENAME SAL*12
---------- ---------- ----------
7369 SMITH 9600
7499 ALLEN 19200
7521 WARD 15000
7566 JONES 35700
7654 MARTIN 15000
7698 BLAKE 34200
7782 CLARK 29400
7788 SCOTT 36000
7839 KING 60000
7844 TURNER 18000
7876 ADAMS 13200
7900 JAMES 11400
7902 FORD 36000
7934 MILLER 15600
日期类型是日期相加减
select empno,ename,hiredate,hiredate+10 from emp;
EMPNO ENAME HIREDATE HIREDATE+1
---------- ---------- ---------- ----------
7369 SMITH 17-12月-80 27-12月-80
7499 ALLEN 20-2月 -81 02-3月 -81
7521 WARD 22-2月 -81 04-3月 -81
7566 JONES 02-4月 -81 12-4月 -81
7654 MARTIN 28-9月 -81 08-10月-81
7698 BLAKE 01-5月 -81 11-5月 -81
7782 CLARK 09-6月 -81 19-6月 -81
7788 SCOTT 19-4月 -87 29-4月 -87
7839 KING 17-11月-81 27-11月-81
7844 TURNER 08-9月 -81 18-9月 -81
7876 ADAMS 23-5月 -87 02-6月 -87
7900 JAMES 03-12月-81 13-12月-81
7902 FORD 03-12月-81 13-12月-81
7934 MILLER 23-1月 -82 02-2月 -82
连接字符串 ||
select ename || ' is a ' || job from emp;
ENAME||'ISA'||JOB
-------------------------
SMITH is a CLERK
ALLEN is a SALESMAN
WARD is a SALESMAN
JONES is a MANAGER
MARTIN is a SALESMAN
BLAKE is a MANAGER
CLARK is a MANAGER
SCOTT is a ANALYST
KING is a PRESIDENT
TURNER is a SALESMAN
ADAMS is a CLERK
JAMES is a CLERK
FORD is a ANALYST
MILLER is a CLERK
select empno,ename || ' is annual salary is ' || sal*12 from emp;
EMPNO ENAME||'ISANNUALSALARYIS'||SAL*12
---------- -----------------------------------------------------------------------
7369 SMITH is annual salary is 9600
7499 ALLEN is annual salary is 19200
7521 WARD is annual salary is 15000
7566 JONES is annual salary is 35700
7654 MARTIN is annual salary is 15000
7698 BLAKE is annual salary is 34200
7782 CLARK is annual salary is 29400
7788 SCOTT is annual salary is 36000
7839 KING is annual salary is 60000
7844 TURNER is annual salary is 18000
7876 ADAMS is annual salary is 13200
7900 JAMES is annual salary is 11400
7902 FORD is annual salary is 36000
字段别名
员工编号 员工信息
---------- -----------------------------------------------------------------------
7369 SMITH is annual salary is 9600
7499 ALLEN is annual salary is 19200
7521 WARD is annual salary is 15000
7566 JONES is annual salary is 35700
7654 MARTIN is annual salary is 15000
7698 BLAKE is annual salary is 34200
7782 CLARK is annual salary is 29400
7788 SCOTT is annual salary is 36000
7839 KING is annual salary is 60000
7844 TURNER is annual salary is 18000
7876 ADAMS is annual salary is 13200
7900 JAMES is annual salary is 11400
7902 FORD is annual salary is 36000
7934 MILLER is annual salary is 15600
sql语言中的空值
空值是无效的,未指定的,未知的或不可预知的值
空值不等同于空格或者0
在表达式中使用空值
算术表达式中如果出现空值,则整个表达式结果为空
连接表达式中出现的空值被当作一个空的(长度为零的字符串处理)
select ename || comm as info1 , sal + comm as total from emp;
INFO1 TOTAL
-------------------------------------------------- ----------
SMITH
ALLEN300 1900
WARD500 1750
JONES
MARTIN1400 2650
BLAKE
CLARK
SCOTT
KING
TURNER0 1500
ADAMS
JAMES
FORD
MILLER
如果算术运算符中出现空值,则显示的结果也为空值。
去除重复行
distinct 关键字 如果是多个字段,则显示的是所有的字段的组合的集合不重复。
select distinct empno,job from emp;
查询结果排序
select empno,job from emp order by empno desc;
也可以按照别名排序
select empno,job,sal*12 as totalsal from emp order by totalsal desc;
部门编号正序,工资数倒序的内容的值
select deptno,empno,job,sal*12 as totalsal from emp order by deptno,totalsal desc;
to_date函数
select * from emp where hiredate > to_date('1982-03-10','yyyy-mm-dd')
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ---------- ---------- ---------- ----------
7788 SCOTT ANALYST 7566 19-4月 -87 3000 20
7876 ADAMS CLERK 7788 23-5月 -87 1100 20
比较运算符
>
<
=
>=
<=
<> 不等于
between and
介于两者之间,包括最大值和最小值
select * from emp where sal between 1900 and 2600
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ---------- ---------- ---------- ----------
7782 CLARK MANAGER 7839 09-6月 -81 2450 10
in 在集合的内容中查询,如果查不到,则不显示
select * from emp where ename in('WARD','ddd')
使用like进行模糊查询
使用%号进行查询,模糊多个
使用-表示查询一个字符
escape表示转义字符
select * from emp where ename like '%\_%' escape '\';
如果遇到\就代表转义字符,这个查询表示的是前边或者后边一个或者多个字母的情况,中间是_的时候,这个一般用在关键中,就是如果
查询的结果中包含关键字的情况。
一个单引号是转义字符,''这种情况表示一个单引号
判断空值 is null
查询数据库中所有是空值的列
select * from emp where comm is null
select * from emp where comm is not null 所有非空的结果查询
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ---------- ---------- ---------- ----------
7369 SMITH CLERK 7902 17-12月-80 800 20
7566 JONES MANAGER 7839 02-4月 -81 2975 20
7698 BLAKE MANAGER 7839 01-5月 -81 2850 30
7782 CLARK MANAGER 7839 09-6月 -81 2450 10
7788 SCOTT ANALYST 7566 19-4月 -87 3000 20
7839 KING PRESIDENT 17-11月-81 5000 10
7876 ADAMS CLERK 7788 23-5月 -87 1100 20
7900 JAMES CLERK 7698 03-12月-81 950 30
7902 FORD ANALYST 7566 03-12月-81 3000 20
7934 MILLER CLERK 7782 23-1月 -82 1300 10
逻辑运算符
and or not
这个查询的结果是所有工作是销售和工作是文员但是工资大于1280的那些人
select * from emp where job = 'SALESMAN' or job = 'CLERK' and sal > 1280
这个是所有销售和文员工资大于1280的
select * from emp where (job = 'SALESMAN' or job = 'CLERK') and sal > 1280
分享到:
相关推荐
本压缩包中包含的“Oracle学习资料”是一份综合性的资源集合,旨在为系统管理员和初学者提供深入理解Oracle数据库的路径。 首先,Oracle数据库的基础知识是学习的起点。这包括了解SQL(结构化查询语言),它是与...
Oracle学习笔记精华版是针对数据库管理系统Oracle的一份重要学习资源,涵盖了从基础概念到高级特性的全面知识。Oracle,作为全球广泛使用的大型企业级数据库系统,对于IT专业人员尤其是数据库管理员(DBA)来说,是...
Oracle学习资源与使用 Oracle是一种关系数据库管理系统(RDBMS),由Oracle Corporation开发。它是最流行的数据库管理系统之一,广泛应用于企业级应用中。下面是Oracle学习资源与使用的知识点总结: 概述 Oracle...
Oracle数据库系统是全球广泛使用的大型关系型数据库管理系统之一,由美国甲骨文公司(Oracle Corporation)开发。对于初学者来说,从零开始学习Oracle需要掌握一系列的基础知识,这些知识涵盖了数据库的基本概念、...
本压缩包"Oracle学习资料.zip"显然是针对Oracle数据库的学习资源,旨在帮助初学者和进阶者深入理解和掌握Oracle的相关知识。 首先,Oracle数据库的基础概念是学习的起点。这包括理解数据库是什么,以及Oracle数据库...
以下是基于“oracle学习有用网址”标题与描述所提炼的关键知识点,这些网站资源将为你的Oracle技能提升提供宝贵的帮助: ### 1. ASK TOM(http://asktom.oracle.com) ASK TOM是Oracle官方维护的一个技术问答平台,...
"Oracle学习视屏"是一系列针对Oracle数据库的学习资源,涵盖了从基础到进阶的全面教程,适合对数据库技术感兴趣或者需要提升Oracle技能的学习者。 首先,Oracle数据库的基础部分通常包括以下内容: 1. 数据库概念...
Oracle 存储过程学习经典入门 Oracle 存储过程学习目录是 Oracle 存储过程学习的基础知识,了解 Oracle 存储过程的基本语法、基础知识和一些常见问题的解决方法是非常重要的。本文将从 Oracle 存储过程的基础知识...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。对于初学者来说,Oracle的学习是一个逐步深入的过程,涉及到SQL语言、数据库管理、表...祝你在Oracle的学习之旅中取得成功!
本"Oracle学习教程&进阶"旨在帮助你深入理解Oracle的核心概念和技术,提升你的数据库管理和开发能力。以下是对教程各章节内容的详细解析: 1. **查询**:在Oracle中,SQL(结构化查询语言)是进行数据查询和操作的...
Oracle学习文档PDF是一个涵盖Oracle数据库系统、SQLPLUS实用工具以及SQL和PL/SQL语言深入学习的综合资源。这个文档集合提供了全面的知识,帮助用户从基础到高级层面掌握Oracle技术。 首先,让我们关注SQLPLUS,这是...
### Tianlesoftware Oracle 学习手册(v1.0)中的关键知识点 #### 1. ORACLE基础知识 ##### 1.1 OLAP与OLTP介绍 **1.1.1 什么是OLTP** OLTP(Online Transaction Processing,在线事务处理)是一种主要针对企业...
这份"oracle学习资料6本合集"提供了一套全面的学习资源,涵盖了Oracle的基础、进阶以及性能优化等多个方面,对于想要深入理解Oracle数据库的人来说是一份宝贵的资料。 首先,"Oracle8i_9i数据库基础.pdf"是针对...
这篇“Oracle学习资料”包含了丰富的资源,帮助初学者和DBA(数据库管理员)深入理解Oracle的基础知识和管理技巧。 首先,Oracle基础部分涵盖了数据库的基本概念,如表、视图、索引、存储过程、触发器等。理解这些...
Oracle是全球广泛使用的数据库管理系统,尤其在企业级应用中占据主导地位。这个“Oracle学习资料集”包含了多种资源,帮助用户深入理解Oracle的核心概念、管理和...希望这些资料能为你的Oracle学习之路提供有力支持。
Oracle学习笔记是李兴华老师编写的Oracle从入门到精通的学习笔记,涵盖了 Oracle 的多表查询、连接、组函数和分组统计等知识点。在本篇笔记中,李兴华老师详细介绍了多表查询的基本语法、左右连接、交叉连接、自然...
Oracle学习笔记 以下是我这一周学习oracle整理的笔记,包括课堂的内容和自己看额外看的视频补充的一些内容,基本上囊括了所有oracle的基本知识。主要的形式是例子代码加代码解释加运行结果,我个人认为对于没有学习...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其性能优化是DBA(数据库管理员)和开发人员的关键技能之一。查询优化是性能优化的核心部分,它涉及到如何以最有效的方式执行SQL查询,从而提高数据检索的...
这份"Oracle学习资料(很全面)"的压缩包显然包含了丰富的资源,帮助初学者和有经验的DBA深入理解Oracle的各种特性和功能。 首先,让我们来探讨Oracle的基础知识。Oracle数据库是一个关系型数据库管理系统(RDBMS),...
本"Oracle学习资料大全PDF"集合了多种资源,旨在帮助初学者和经验丰富的DBA(数据库管理员)深入理解Oracle的核心概念和技术。 首先,"Oracle10gR1.Step.By.Step.by.Kamus.pdf"是一本逐步指南,详细介绍了Oracle 10...