ORACLE数据库学习分享

ORACLE数据库学习分享


开发工具与关键技术:PLSQL Developer + DML
撰写时间:2019年3月26日


经过了差不多一个月的时间来学习Oracle数据库,让我收获很多,下面就跟大家分享一下,这段时间学到的一些知识点。

SQL语句分为以下三种类型:

DML: Data Manipulation Language 数据操纵语言
DDL: Data Definition Language 数据定义语言
DCL: Data Control Language 数据控制语言
今天跟你们分享的是三种类型中的数据操控语言(DML)。
一、SQL SELECT查询语句(数据操纵语言(DML)是用于查询、插入和修改数据。)
1、首先要说的是SQL SELECT查询语句中有一个特殊的表——dual。dual是一个虚拟表,用来构成select的语法规则,oracle保证dual虚拟表里面永远都有一条记录。
dual虚拟表是可以在数据库里直接使用而不报错,常用来做一些用户查询,还有系统时间sysdate测试等等。
例如:select sysdate from dual;
2、查看用户下的所有表:select * from user_tables;
3、一些简单的查询,这些查询都是在已导入的employees表中查询的数据。
导入表:命令窗口@开头加上文件路径和文件类型,然后敲一下回车键,表的导入就完成了(见图1)。
在这里插入图片描述
图1
简单的各种查询举例:
1) 查询员工的ID,姓名,入职日期,工资:

select employee_id,last_name,hire_date,salary 
from employees;

结果截图:
在这里插入图片描述
2) 别名查询举例(as可以省略):

Select employee_id as ID,last_name as 姓名,hire_date as 日期,salary as 工资 
from employees;

结果截图:
在这里插入图片描述
3) 连接符(||)、字符串(’ ’)、别名(” ”)应用举例:

select last_name||'的工号是'||employee_id as "employee details" 
from employees;

结果截图:
在这里插入图片描述
4) where子句过滤不满足的条件(查询员工ID是80的employee_id,姓名last_name):

select employee_id,last_name,department_id 
from employees 
where department_id = 80;

结果截图:
在这里插入图片描述
5) ORDER BY子句排序(查询员工employee_id,姓名last_name,工资salary,按工资降序排序):

select employee_id,last_name,salary 
from employees 
order by salary desc;

结果截图:
在这里插入图片描述
6) 查询TO_CHAR函数对日期的转换:

select last_name,hire_date,to_char(hire_date,'yyyy-mm-dd') as hire_date 
from employees 
where to_char(hire_date,'yyyy/mm/dd') = '1997/06/25';

结果截图:
在这里插入图片描述
7) 查询多表连接:

select  e.last_name, d.department_name, l.city 
from employees e, departments d, locations l  
where e.department_id=d.department_id and d.location_id=l.location_id;

结果截图:
在这里插入图片描述
8) 计算工资的平均值(avg)、最大值(max)、最小值(min)、合计(sum):

select avg(salary),max(salary),min(salary),sum(salary)  
from employees  
where job_id like '%REP';

结果截图:
在这里插入图片描述
9) 查询员工的平均工资,按部门department_id分组:

select department_id,avg(salary)
from employees
group by department_id;

结果截图:
在这里插入图片描述
10)子查询(查询返回公司工资最少的员工的last_name, job_id和salary):

select last_name, job_id, salary
from employees
where salary = (select min(salary) from employees);

结果截图:
在这里插入图片描述
查询语句有各种各样,在这就跟你们举了10个不一样的查询例子,还有很多很好的语句,只要用上不一样的关键字,就会查询出你们自己想要的结果,想了解更多的关键字,可以去我的个人博客(连接:https://blog.csdn.net/weixin_44545036 )里找到oracle笔记(一)(二)(三)来看,我已经整理了一些关键字和关键字的作用发上了博客里。

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值