Oracle的表查询

前提:搞清楚scott的几张表的含义

EMP:雇员表

字段

类型

注释

EMPNO

 

员工编号

ENAME

 

员工姓名

JOB

 

员工职位

MGR

 

上级编号

HIREDATE

 

入职日期

SAL

 

薪水

COMM

 

奖金

DEPTNO

 

部门编号

DEMP:部门表

字段

类型

注释

DEPTNO

NUMBER(2)

部门编号

DNAME

VARCHAR2(14)

部门名字

LOC

VARCHAR2(13)

所处位置

SALGRADE:工资级别表

字段

类型

注释

DEPTNO

NUMBER(2)

部门编号

DNAME

VARCHAR2(14)

部门名字

LOC

VARCHAR2(13)

所处位置

  1. 查看表结构

desc dept;

  1. 查询所有列

select * from dept;

  1. 查询指定列

select ename,sal,job,depno from emp;

  1. 取消重复行

select distinct deptno from emp;

举例:查询smith的薪水,工作和所在部门。

select sal,job,deptno from emp where ename='smith';

举例:

创建一张表:

create table users(

userid varchar2(20),

userName varchar2(30),

userPass varchar2(20)

);

插入数据:

insert into users values('a0001', '王二小哈哈哈哦', 'fanyong@gmail.com');

赋值数据:把自己的数据加入到自己的表中:

insert into users(userid, userName, userPass) select * from users;

每次插入后数据量都是上一次的一倍,

查询记录行数:

select count(*) from users;

  1. 使用算数表达式,使用列的别名

显示每个雇员的年工资

select ename "姓名", sal*12+comm*12 "年收入" from emp;

但是计算结果有问题,所有工资comm字段为null的记录,年收入全部为null

  1. 如何计算null值?

使用nvl函数来判断是不是空值

select ename "雇员", sal*12 + nvl(comm, 0)*12 "年收入" from emp;

  1. 使用where子句

如何显示工资高于3000的员工:

select ename,sal from emp where sal>3000;

如何查找1982年1月2号以后入职的员工

select ename, hiredate from emp where hiredate>'2-1月-1982';

如何显示工资在2000到2500之间的员工

select ename, sal from emp where sal>2000 and sal<2500;

  1. 在where中使用in

如何显示员工编号是101或者220或者340的员工

select * from emp empno in (101,220,340);

  1. 使用like操作符

% : 表示任意0到多个字符

_ : 表示任意1个字符

如何显示首字母为S的员工姓名和工资

select ename, sal from emp where ename like 'S%';

如何显示第三个字符为大写O的所有员工的姓名和工资

select ename, sal from emp where ename like '__O%';

  1. 使用is null , is not null 操作符

如何显示没有上级雇员的信息

select ename from emp where mgr is null;

  1. 使用逻辑操作符号

查询工资高于500或者是岗位为Manager的雇员,同时还要满足他们姓名的首字母为大写字母J

select * from emp where (sal>500 or job='Manager') and ename like 'J%';

  1. 使用order by子句排序

如何按照工资从低到高的顺序显示雇员信息

select * from emp order by sal asc;

如何按照部门号升序而雇员的工资降序排列

select * from emp order by deptno asc, sal desc;

  1. 使用列的别名排序

select * from emp where (sal+nvl(comm,0))*12 "年薪" from emp order by "年薪";

  1. 分页查询

先学子查询!

三、Oracle的简单查询相关推荐

  1. oracle中简单查询语句的格式及执行顺序分析

    一条简单的查询sql格式如下: SELECT ... FROM .... [WHERE ...] --过滤单行 [GROUP BY ...   [HAVING ...]]--GROUP BY对前面wh ...

  2. Oracle学习之路——简单查询

    本人大三单身狗,虽说还有一年毕业,可是到了大四再幡然醒悟,奋发图强,着实有点晚.为了尽可能将自己从"毕业即失业"的悲惨现状中拯救出来,开始学习吧!!!本博客是为了记录鄙人学习之路中 ...

  3. 查询计算机系学生的详细记录,实验三_数据库的简单查询和连接_.doc

    实验三_数据库的简单查询和连接_ 实验三 数据库的简单查询和连接查询 实验目的及要求 掌握SELECT语句的基本语法: 熟练掌握表的数据简单查询.数据排序: 熟练掌握表的连接查询的表示: 掌握等值连接 ...

  4. SQL简单查询——学生课程表

    文章目录 一.学习目标 二.数表介绍 三.SQL简单查询 四.SQL复杂查询 一.学习目标 1.掌握 S E L E C T SELECT SELECT语句的语法格式,各句子的使用: 2.掌握别名的概 ...

  5. Oracle从零开始2——简单查询

    2.1 所需要的表 雇员表(EMP) No 字段 类型 描述 1 EMPNO NUMBER(4) 表示雇员编号,是唯一编号 2 ENAME VARCHAR2(10) 表示雇员姓名 3 JOB VARC ...

  6. Oracle学习笔记(三)。连接查询。等值连接,非等值连接,自连接,LEFT OUTER JOIN,RIGHT JOIN,FULL JOIN,自然连接,内连接 INNERJOIN

    文章目录 1. 什么是多表查询 2. 多表链接方式 3. 多表连接语法 3.1 语法结构 3.2 定义连接 3.3 原则 4. 等值连接-内连接 4.1 什么是等值连接 4.2 抉择矩阵 4.3 使用 ...

  7. oracle.简单查询、排序、限定查询、单行函数

    一.简单查询: 1.查询数据表的所有列: SELECT * FROM 表名; SELECT 列名,列名.... FROM 表名; 2.起别名: SELECT 列名 [AS 别名],列名 别名.... ...

  8. oracle计算期间工作日的简单查询办法

    oracle计算期间工作日的简单查询办法 SELECT sum(天数) 天数 FROM ( SELECT rownum 行,to_char(to_date('2019-12-31','yyyy-mm- ...

  9. Oracle数据库之数据库的简单查询

    注:所有的操作都建立在Oracle的Scott用户自带的表中进行 一.查询表的结构与显示表 查看数据表 select * from tab; 查看表的结构 desc 表名称; 二.简单查询(单表查询) ...

最新文章

  1. ppt流程图字体太小_关于答辩PPT的制作技巧
  2. NeurIPS 2020 | 利用像素级别循环一致性解决领域自适应语义分割问题
  3. h5页面不可 移动_七大h5创建工具
  4. Servlet添加商品
  5. 用matalb、python画聚类结果图
  6. excel自动保存_萌新必看!python处理excel实例
  7. Java 性能优化系列之1[设计与程序优化]
  8. ubuntu部署django详细教程
  9. Apache POI 安全漏洞
  10. Ubuntu22.04安装网易云音乐实操笔记
  11. 数据库设计员工管理系统
  12. 鸟哥linux私房菜pdf及配套视频分享
  13. 第三方登陆之微博登录
  14. LUP分解方法,矩阵求逆
  15. 一分钟快速把一篇论文后面的参考文献全部下载下来
  16. 北京地铁,4号线换乘13号线,用时最短换乘线路
  17. 搭建风控系统道路上踩过的坑合集
  18. 解决Windows与Ubuntu双系统时间同步问题
  19. ACM-图论完全总结(知识点+模板)
  20. 提前揭秘CJ八大看点

热门文章

  1. 容器 PaaS 新技术架构下的运维实践
  2. 消息称中国商务部已批准高通收购恩智浦
  3. JS编程建议——37:推荐使用replace(1)
  4. 遭遇错误:ORA-01031
  5. 政务大数据共享难题的破解路径有哪些?
  6. Phpstorm 9 关闭拼写检查
  7. 批量下载_Zip压缩包的方式
  8. Android的一些属性使用
  9. 邮件服务器SASL TLS 反垃圾邮件系统
  10. 使用Active Directory的常见问题2