SYS口令:change_on_install
SYSTEM口令:manager
username:scott
password:tiger
--解锁用户
alter user scott account unlock;
--描述表
desc emp;
--dual表是空表,只有一个字段,用于计算数学表达式等使用
select 2*3 from dual;
--任何含有空值的数学表达式,最后计算的结果都是空值
-- || 表示字符串连接
-- 两个单引号里面(中间)的两个单引号代表一个单引号字符
-- distinct关键字用于去除重复,修饰多个字段时,去除的是多个字段的组合重复
-- between and 相当于 “>= <=”
-- 空值条件查询不使用“==”,而是使用is null或者is not null
-- in() 包括哪些值;not in 不包含
-- where、and(并且)、or(或者)、like(模糊查询,%代表多个,_代表一个,\是转义字符)
select ename from emp where ename like '%\%%';
--排序 order by asc / desc
-- function
-- lower():转化为小写;substr(字段,1,3):从第1个字符开始截取,一共截取3个字符;chr(65):把ascii码转化为字母;
-- ascii('A'):把字母转化为ascii码;round():四舍五入;
-- to_char():可以转化数字,也可以转化日期
-- to_date():日期转换
-- to_number()
select to_char(sal,'$99,999.9999') from emp;
select to_char(hiredate,'YYYY-MM-DD HH24:MI:SS') from emp;
select sal from emp where sal > to_number('$1,250.00','$9,999.99');
select * from emp where hiredate>to_date('1981-2-24','YYYY-MM-DD');
-- nvl()
select ename, sal*12 + nvl(comm,0) from emp;
-- group function
-- max()、min()、avg()、sum()、count():会把很多条记录组合在一起,最后产生一个输出;
select count(distinct deptno) from emp;
-- group by
-- 求不同部门的平均薪水
select avg(sal), deptno from emp group by deptno;
-- 求最高薪水的人的名字和薪水
select ename,sal from emp where sal=(select max(sal) from emp);
-- 求各个部门中薪水最高的人的名字和薪水
select ename,sal from emp where sal in(select max(sal) from emp group by deptno) --这是错误的答案
正确答案如下:
select ename,sal from emp join
(select max(sal) as max_sal,deptno from emp group by deptno) t
on (emp.sal = t.max_sal and emp.deptno = t.deptno);
-- having:是对分组进行限制
-- 求不同部门的平均薪水,并且平均薪水大于2000的
select avg(sal), deptno from emp group by deptno
having avg(sal)>2000 order by deptno;
-- 子查询
-- 有哪些人的薪水位于所有人的平均工资之上
select ename,sal from emp where sal>(select avg(sal) from emp)
--求每个部门的平均薪水的等级
select grade from salgrade s join
(select avg(sal) avg_sal from emp group by deptno) t
on (t.avg_sal>s.losal and t.avg_sal<s.hisal);
--求每个人的薪水等级(显示名字、部门、薪水等级)
select ename,dname,grade from emp e
join dept d on(e.deptno=d.deptno)
join salgrade s on(e.sal between s.losal and s.hisal)
--求某个人的名字,以及经理人的名字查出来(提示:当成两个表来看待)
select e1.ename,e2.ename from emp e1,emp e2 where e1.mgr = e2.empno; --这种写法叫做自连接
另一种写法:select e1.ename,e2.ename from emp e1 join emp e2 on(e1.mgr = e2.empno);
加入left结果是不一样的:select e1.ename,e2.ename from emp e1 left join emp e2 on(e1.mgr = e2.empno)
--右连接、全连接
select ename,dname from emp e right join dept d on(e.deptno=d.deptno);
select ename,dname from emp e full join dept d on(e.deptno=d.deptno);
分享到:
相关推荐
Oracle学习笔记精华版是针对数据库管理系统Oracle的一份重要学习资源,涵盖了从基础概念到高级特性的全面知识。Oracle,作为全球广泛使用的大型企业级数据库系统,对于IT专业人员尤其是数据库管理员(DBA)来说,是...
### Oracle学习笔记知识点详解 #### 一、Oracle简介 Oracle是一家知名的软件公司,以其数据库管理系统闻名全球。该公司成立于1977年,总部位于美国加利福尼亚州。Oracle不仅提供数据库解决方案,还涉及中间件、...
Oracle学习笔记 Oracle学习笔记是李兴华老师编写的Oracle从入门到精通的学习笔记,涵盖了 Oracle 的多表查询、连接、组函数和分组统计等知识点。在本篇笔记中,李兴华老师详细介绍了多表查询的基本语法、左右连接...
在Oracle学习笔记中,对安装卸载和配置的详尽讲解,不仅为学习者提供了操作指导,而且还涉及到了数据库管理的一些基础知识点。这些内容对于数据库管理员和开发人员来说都是十分重要的,因为它们是操作Oracle数据库的...
Oracle学习笔记 以下是我这一周学习oracle整理的笔记,包括课堂的内容和自己看额外看的视频补充的一些内容,基本上囊括了所有oracle的基本知识。主要的形式是例子代码加代码解释加运行结果,我个人认为对于没有学习...
资源名称:Oracle学习笔记-日常应用、深入管理、性能优化内容简介:Oracle学习笔记-日常应用、深入管理、性能优化Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛...
以下是对Oracle学习笔记整理的主要知识点的详细说明: 1. **数据库选择**: 在决定使用哪种数据库时,通常需要考虑项目的规模、性能需求、安全性要求以及可用资源。Oracle数据库因其稳定性、可扩展性和高性能而被...
### Oracle 学习笔记知识点概览 #### 一、Oracle 数据库系统参数查询与管理 在 Oracle 数据库的学习过程中,了解如何查看和管理数据库的系统参数是非常重要的。这些参数直接影响着数据库的性能和稳定性。 ##### ...
ORACLE学习笔记:日常应用、深入管理、性能优化.part1
Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的特性和功能来优化数据管理和查询性能。本文主要探讨Oracle数据库的入门基础知识,特别是与索引相关的概念。 首先,我们要理解ROWID的概念。ROWID是...
全网最全的oracle学习笔记,oracle学习笔记,oracle,### 4、oracle的七个服务 ```sql 1、Oracle ORCL VSS Writer Service Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如...
根据提供的信息,我们可以总结出以下Oracle数据库学习的关键知识点: ...以上是基于提供的内容整理出的Oracle学习笔记中的关键知识点。通过理解这些基础知识,可以更好地管理和操作Oracle数据库。
### Oracle 学习笔记知识点详解 #### 一、Oracle 数据库简介 Oracle 是一款由美国甲骨文公司开发的关系型数据库管理系统。它以其强大的数据处理能力、高度的安全性及稳定性而闻名于世,在金融、电信、政府等领域...
Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛应用。本书设计了大量的应用情景,介绍了数据库管理员和开发人员常用的管理、维护和优化Oracle 11g数据库的技术和...
在“MSDN Oracle学习笔记”中,我们可以期待找到关于Oracle数据库的详细讲解和实践指导。 首先,Oracle数据库的基础知识是必不可少的。这通常涵盖数据库系统的基本概念,如SQL(结构化查询语言)的使用,数据类型,...
oracle 学习笔记oracle 学习笔记oracle 学习笔记oracle 学习笔记oracle 学习笔记oracle 学习笔记oracle 学习笔记oracle 学习笔记oracle 学习笔记