Oracle 查询01

本文围绕Oracle数据库的查询展开,介绍了数据库的结构化查询语句(SQL),包括数据操纵、定义、控制语言。详细讲解了简单查询的两种形式、别名查询、去除重复查询,还阐述了限定查询的格式、执行顺序,以及关系、逻辑运算符,空判断和IN查询等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查询

数据库有一门专门属于自己的语言,这门语言叫做“Structured Query Language”结构化查询语句。

SQL语句的分类

数据操纵语言(DML Data Manipulation Language)

SELECT (查询) INSERT(插入数据) UPDATE(更新数据) DELETE(删除数据)

数据定义语言( DDL Data definition Language)

CREATE ALTER DROP RENAM TRUNCATE

数据控制语言(DCL Data Control Language)

GRANT

简单查询

第一种形式

SELECT *

​ FROM 数据来源(可以是数据表);


​ ”*“代表查询所有字段的意思

上面的查询语句在数据库种的执行顺序是先执行 FROM 子句再执行SELECT子句。

在这里插入图片描述

第二种形式

SELECT 字段名,字段名,字段名…

​ FROM 数据来源;


这种形式查询的内容是指定的。

在这里插入图片描述

SQL语句可以使用别名查询,并且数字类型的字段还可以进行四则运算。

别名查询

SELECT 字段名 AS 对应的别名,字段名 AS 对应的别名…

​ FROM 数据来源;


AS 可以省略

在这里插入图片描述

去除重复

SELECT DISTINCT 字段名,字段名…

​ FROM 数据来源;


注意:如果字段名有多个时,只有所有的字段都相同才会被认为时重复。

没有去除重复

在这里插入图片描述

去除重复之后

在这里插入图片描述

限定查询

限定查询的格式

SELECT *

​ FROM 数据来源,数据来源…

​ WHERE 过滤条件


执行顺序是:第一步执行FROM子句,再执行WHERE子句,最后才是SELECT。

WHERE子句是对数据进行条件判断,之后选择满足条件的数据。

关系运算符

“< ” ,“> ”

例:撒选出薪资大于2000员工信息

在这里插入图片描述

“=”

例:查询SMITH的信息

在这里插入图片描述

逻辑运算符

例:查询薪资在1500到3000 之间的员工信息

第一种方式:使用“<=”,">="和AND

在这里插入图片描述第二种方式:使用BETWEEN AND ,小的数值放在AND前面大的放在AND后面

在这里插入图片描述

注意:以上两种方案第二种会更好,第一种会被数据库判断为两个判断条件,第二种则会被认为式一个判断条件,效率更高

例如:查询薪资大于2000,或职位是职员的员工信息

第一种方案:使用 OR

在这里插入图片描述

第二种方案:使用 UNION ALL

在这里插入图片描述

注意: UNION ALL 可以将两个查询的结果并在一起显示,但是两个查询的关系必须是OR的关系,用来替代OR,避免索引失效。

空判断

例:查询所有没有奖金的员工信息

SELECT *
	FROM emp
	 WHERE comm IS NULL;

在这里插入图片描述

例:查询所有有奖金的员工信息

SELECT *
	FROM emp
	 WHERE comm IS NOT NULL;

在这里插入图片描述

IN查询

例:查询出编号是7369,7782,7788的员工信息

SELECT *
	FROM emp 
	 WHERE empno IN(7369,7782,7788);

在这里插入图片描述

例:查询出编号不是7369,7782,7788的员工信息

SELECT *
	FROM emp 
	 WHERE empno NOT IN(7369,7782,7788);

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值