Oracle基础学习之简单查询和限定查询_oracle

本文主要介绍的是关于Oracle中的简单查询和限定查询,下面话不多说,来一起看看吧。

SQL:

     1,DML(数据操作语言):主要指的是数据库的查询与更新的操作,查询操作是整个sql语法 中最麻烦也是笔试中最常用的部分。

     2,DDL(数据定义语言):主要指的是数据对象的创建(表、用户、)例如:creat.需要相关的设计范式。

     3,DCL(数据控制语言):主要进行权限的操作(需要结合用户来观察),此部分由DBA负责。

简单查询:

1,利用select 子句控制要显示的数据列:

 select empno,ename,ename,job,sal from emp;

2,可以使用distinct来消除重复的数据行显示:

 select distinct job from emp;

3,select子句可以进行四则运算,可以直接输出常量内容,但是对于字符串使用单引号数字直接编写,日期格式按照字符格式:

select empno,ename,(sal*15+(200+100)) income from emp;

4,||负责输出内容连接此类的操作很少直接在查询中出现:

 select empno||ename from emp;

5,where子句一般都写在from子句之后,但是是紧跟着from子句之后执行的,where子句控制显示数据行的操作,而select控制数据列,select子句要落后于where子句执行,所以在select子句之中定义的别名无法在where中使用。

限定查询:

1,关系运算符:

 select * from emp where sal>1500;

 select * from emp where ename ='SMITH'

 select empno,ename,job from emp where job<>'SALESMAN';

2,逻辑运算符:

 select * from emp where sal>1500 and sal<3000;
 select * from emp where sal>2000 or job='CLERK';
 select * from emp where not sal >=2000;

3,范围查询:

 select * from emp where sal between 1500 and 2000;
 select * from emp where hiredate between '01-1月-1981'and'31-12月-1981';

4,空判断(空在数据库上表示不确定,如果在数据列使用null不表示0)

select * from emp where comm is not null;

5,IN操作符(类似于between and 而in给出的是指定的范围):

 select * from emp where empno in (7369,7566,7788,9999);

关于not innull的问题:

在使用not in 进行范围判断的时候,如果范围有null,那么不会有任何结果返回。

6,模糊查询:

“-”:匹配任意一位字符;

“%”:匹配任意的0,1,,或者多位字符;

查询姓名是以字母A开头的雇员信息:

 select * from emp where ename like 'A%'

查询姓名第二个字母是A的雇员信息:

select * from emp where ename like '_A%';

查询姓名任意位置是A的雇员信息:

 select * from emp where ename like '%A%';

查询排序:

ASC(默认):按照升序排列;

DESC: 按照降序排列;

查询所有的雇员信息,要求按照工资的由高到低:

 select * from emp order by sal desc;

查询每个雇员的编号,姓名,年薪,按照年薪由低到高排序:

  select empno ,ename,sal*12 income from emp order by income;

语句的执行顺序:from - where -select - order by

基础练习:

1,选择部门30中的所有员工:

 select * from emp where deptno=30;

2,列出所有办事员(clerk)的姓名,编号,和部门编号:

select ename,empno,deptno from emp
where job='CLERK';

3,找出佣金高于薪金的60%的员工:

 select * from emp where comm>sal*0.6 ;

4,找出部门10中所有的经理(manager)和部门20中所有的办事员(clerk):

 select *
 from emp
 where (deptno=10 and job='MANAGER' )or(deptno=20 and job='CLERK'   );

5,找出部门10中所有的经理(manager),部门20中的所有办事员(clerk),以及既不是经理又不是办事员但是工资高于等于2000的所有员工资料:

 select *
 from emp
 where (deptno=10 and job='MANAGER')or(deptno=20 and
 job='CLERK')or(job! ='MANAGER'and job!='CLERK' and sal>=2000);
  select *
  from emp
  where (deptno=10 and job='MANAGER')or(deptno=20 and job='CLERK')or(job
  not in ('CLERK','MANAGER') and sal>=2000);

6,找出收取佣金的员工的不同工作:

select distinct job
 from emp
 where comm is not null;

7,找出收取佣金或者收取的佣金低于100的员工:

  select distinct job
  from emp
 where comm is null or comm<100;

8,显示不带有“R”的员工姓名:

 select *
 from emp
 where ename not like '%R%';

9,显示姓名字段含有A的所有员工姓名,显示的结果按照基本的工资由高到低,如果工资相同,则按照雇佣年限由早到晚,如果雇佣日期相同,则按职位排序:

 select * from emp where ename like '%A%' order by sal desc,hiredate
 asc,job;

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索oracle简单语句
oracle中限定条件
,以便于您获取更多的相关知识。

时间: 2024-10-22 19:30:59

Oracle基础学习之简单查询和限定查询_oracle的相关文章

Oracle基础知识-SQL简单命令

SQL语句包括两个部分:1 DDL 数据定义语言 2 DML 数据控制语言 DDL: create:创建一个表 [html] view plaincopyprint? create table b( clob char(1) ); alter:增加已经定义的表列的分配 drop:删除一个表 desc:查看一个表的定义 DML: selelct: [html] view plaincopyprint? select * from b; insert: [html] view plaincopypr

Oracle基础学习之子查询_oracle

首先使用子查询的时候注意事项包括,子查询可以嵌套多层和子查询需要圆括号()括起来,下面我们来看看详细的介绍. 基础介绍 1,wherer:子查询一般会返回单行单列 单行多列 多行单列 : 2,having:子查询会返回单行单列,同时表示要使用统计函数: 3,from:子查询返回多行多列数据(表结构): 4,select:返回单行单列 (一般不使用): 示例详解 where(进行数据行的筛选操作): a:查询出低于公司平均工资的雇员信息. select * from emp where sal<(

Oracle中简单查询、限定查询、数据排序SQL语句范例和详细注解_oracle

一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统.ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言. Oracle数据库之所以发展的很好,主要也是因为Oracle是全世界最早采用SQL语句的数据库产品. SQL功能强大,概括起来,它可以分成以下几组: 复制代码 代码如下: DML(Data Manipulation Language) 数据操作语言,用于

Oracle基础学习(六) 查询

本章目标 单表查询 算术运算 NULL值 比较运算符 逻辑运算符 ORDER BY子句 使用SQL运算符 多表查询 联结条件和联结类型 联结查询使用SQL/92语法 行的标识符 1. 行的标识符 a) 在Oracle数据库中的每一行都有一个唯一的行标识符,它用于Oracle数据库内部存储行的物理位置. b) 例如,查看customer表的信息 SELECT ROWID, customer_id FROM customers; c) 查询效果如下图所示: d) 需要注意的是ROWID并不出现在表的

Oracle基础学习(二) SQL语言基础

本章目标 数据类型 SQL语句类型介绍 SELECT基础 数据类型 1. 数据类 型 a) 数据类型是在设计表结构中需要定义的,选择适当的数据类型可以节省存储空间,提高运算效率 . b) Oracle数据类型主要包括字符型.数据型.日期/时间型.大对象(LOB)型等 2. 字符型 3. 数值型 4. 日期/时间类型

Oracle基础学习(三) Oracle PL/SQL语言基础

本章目标 PL/SQL语言基本结构 PL/SQL变量和常量的声明 PL/SQL程序的执行部分 了解PL/SQL常用函数 PL/SQL简介 1. PL/SQL简介 a) PL/SQL(Procedural Language/SQL,过程语言/SQL) i. 它是结合Oracle过程语言和结构化查询语言的一种扩展语言 ii. PL/SQL支持多种数据类型,可以使用条件语句和循环语句等控制结构 iii. PL/SQL可用于 创建存储过程.触发器和程序包,也可以用来处理业务规则.数据库事件或给SQL命令

Oracle基础学习(一) Oracle简介

本章目标 介绍Oracle公司 Oracle下载安装 Oracle用户类型 Enterprise Manager管理工具 SQL*Plus管理工具 介绍Oracle公司 1. Oracle公司简介 a) Oracle(甲骨文)公司 i. 1977年6月,Larry Ellison,Bob Minor和Ed Oates三人合伙创办 (Software Development Laboratories,SDL) ii. 1979年,更名为Relational Software Inc., RSI i

Oracle基础学习笔记

1.sqlplus-----开启服务2.输入用户名和密码(默认3个用户,注意,密码是可以修改的:system/manager;scott/tiger;sys/change_on_install),连接数库.3.创建表空间: create tablespace 表空间逻辑名 datafile '表空间文件的物理逻辑' size 文件大小(如:10m) autoextend 是否自动增长文件大小(on/off); 4.创建用户:create user 用户名 identified by 密码: 5.

Oracle基础学习(五) 表的实现

本章目标 数据完整性 创建表 修改表 添加.修改.删除列 添加.删除约束 启用.禁用约束 删除表 数据完整性 1. 数据完整性 a) 存储在数据库中的所有数据值均正确的状态. 如果数据库中存储有不正确的数据值,则该数据库称为已失去数据完整性. b) 数据完整性(Data Integrity)是指数据的精确性(Accuracy)和可靠性(Reliability). 它是应防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的. c) 2. 数据完整性-1 a)