持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第3天,点击查看活动详情
Oracle简介
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。
首先,切换到需要的用户 由于需要查询的emp表在SCOTT用户下,切换到SCOTT表
ALTER USER scott IDENTIFIED BY Orcl123456 ACCOUNT UNLOCK; select * from emp;
然后简单试一下,对员工的工资进行一个降序排序
select ename,job,sal from emp where sal<=2000 order by sal desc;
可以得到结果
可以发现员工按照工资(sal)的多少进行了降序排列。
内连接
使用显式内连接和隐式内连接分别查询。 先介绍一下两种连接的区别坐标坐标
隐式内连接:没有JOIN关键字,条件使用WHERE指定
显式内连接:使用INNER JOIN ... ON语句, 可以省略INNER
两种查询的sql语句如下
select e.ename,e.job,e.sal,d.dname,d.loc from emp e INNER JOIN dept d ON e.deptno = d.deptno WHERE d.dname='RESEARCH';
select e.ename,e.job,e.sal,d.dname,d.loc from emp e INNER JOIN dept d ON e.deptno = d.deptno AND d.dname='RESEARCH';
可以在代码后半段明显看到两种查询方式的区别
子查询
然后使用子表查询查询一下30号部门的员工,()里嵌套一个子查询
select ename ,job,sal,deptno from emp WHERE job IN (select distinct job from emp WHERE deptno = 30);
得到结果