Oracle数据库的简单查询

本文使用到的数据表如下图:

表名为 EMP 。其中,empno为员工号,empname为员工姓名,job为员工岗位,mgr为该员工上司的员工号,hiredate是入职日期,salary是月薪,comm是月奖金,department是所在部门的编号。

1.表结构查询  desc [表名];

2.查询所有列 select * from [表名];

3.查看指定行 select [列名] from [表名]; (多个列名用逗号隔开)

例如,查看所有员工的工资和入职时间

4.取消重复行 select distinct [列名] from [表名];

5.算数表达式

如何显示每个雇员的年工资?

在我们原始的表中,没有年工资这一栏,可以使用算术表达式来处理此要求。

我们注意到,年工资这一列的列名为“salary*12”,很碍眼。那么我们来给这一列起一个别名,使数据更易读。

别名可以使用中文,也可以使用英文(使用英文时不需要加双引号),但使用中文时会出现如图中错位的现象。

如果我们的年工资要求加上奖金呢?如何写sql语句呢?是不是“select empname,salary*12+comm*12 from emp”呢?我们来试一下。

哦,为什么很多人的年工资都没有了呢?这要是按年薪发工资,这些人不是白干了一年了?怎么会这样?原来是因为有些员工的COMM列为null,所以算术表达式最后的结果也是null。那么如何解决呢?这里需要用到nvl函数。

解释一下nvl函数,第一个参数是你要处理的含有null的列名,第二个参数是若该列为null,则用该值代替null。

6.给查询加上条件

直接举两个例子吧,简单明了

a.显示工资不低于3000的员工

b.显示工资在2000到5000之间的员工(多个条件要使用逻辑运算符连接)

7.like操作符,就是“形如”。。。的条件

%表示任意0到多个字符_表示单个字符

如何显示首字母为“S”的员工信息?

如何显示名字第三个字母为“O”的员工信息?

8.在where条件中使用in

如何显示员工号为7369和7782的员工的信息?

9.如何处理null值?

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

思考:如何查询姓名首字母为“J”,且工资高于500或岗位为“manager”的雇员?您应该得到以下的结果:

10.使用order by排序

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

oracle默认的排序顺序是升序(即asc),若想按降序排列,则在order by参数后加 desc

按照部门号升序(主要条件),工资降序(次要条件)的排序方式显示

oracle数据库查表_【Oracle数据库】表查询(一)相关推荐

  1. java导出数据透视表_使用数据库中的Java流制作数据透视表

    java导出数据透视表 来自数据库行和表的原始数据不能为人类读者提供太多了解. 相反,如果我们对数据执行某种聚合,则人类更有可能看到数据模式 在向我们展示之前. 数据透视表是聚合的一种特定形式,我们可 ...

  2. tomcat一段时间不操作oracle就关闭连接_操作数据库常见错误,开发人员必掌握的技能...

    人生路,靠不得任何人,只能靠自己.那些该吃的苦,一点都不能少,那是我们通向未来必须要走的路,从泥泞不堪,布满荆棘的小道上迈步,才能踏上铺满鲜花的大道. 前言 作为一个开发人员虽然有时候对于数据库这方面 ...

  3. visio连接mysql数据库表_「数据库关系图」使用Visio 2010 画数据库中表与表的关系 - seo实验室...

    数据库关系图 1.在visio中新建数据库模型图 打开visio 2010,文件->新建->数据库->数据库模型图.建立数据库模型图之后,菜单栏多出一个菜单项"数据库&qu ...

  4. 根据excel列动态创建mysql表_根据数据库字段动态生成excel模版下载,上传模版获取数据存入数据库(poi 反射)...

    环境:mysql5.7.28 java8 Spring boot 2.2.4 mybatis-plus3.10 动态:根据需求,用户可以选择对应的字段生成excle模版 下载 poi 反射:poi是e ...

  5. mysql删除有关联的数据库表_【数据库】mysql如何删除关联表

    mysql数据库中,表与表之间进行关联之后,就不可随意的进行删除操作,否则会影响所有关联表之间的结构,那么如何安全的删除关联表呢,让我们来了解一下. 推荐课程:MySQL教程. 1. 删除表的外键约束 ...

  6. 创建student数据表_创建数据库、表和更改表

    终端操作 第一步当然是打开终端,然后就是输入代码喽: mysql -u root -p 然后登陆成功,可以看到你的版本号:我的是8.0.18.后续都是这个版本. 创建数据库: CREATE DATAB ...

  7. 将Excel表格导入mysql数据表_将excel表导入数据库的方法步骤

    在Excel中录入好数据以后,可能会有导入数据库的需求,这个时候就需要利用一些技巧导入.接下来是学习啦小编为大家带来的如何将excel表导入数据库的方法,希望对你有用. 将excel表导入数据库的方法 ...

  8. 多对多关系需要建立中间表_【数据库基础】为什么需要三张表之多对多表结构设计...

    了解完一对一和一对多表结构设计,接下来一起了解一下多对多的表结构设计. 同样,咱们先来想一般什么场景需要用到多对多.假如说咱们有一个叫订单和一个叫商品的这两张表,这两张表的关系,它其实就是一个多对多的 ...

  9. 表3.5 文章管理测试用例表_本地管理表空间管理机制

    表空间是一种为段(表,索引等)提供空间的逻辑结构,所以,当在表空间中增加,删除段的时候,数据库就必须跟踪这些空间的使用. 如下例所示,假定一个新创建的表空间包含了五个表 表一--表二--表三--表四- ...

  10. mysql数据库取交集_不同数据库取并集、交集、差集

    一.并集: 需求:汇总t1.t2两表的数据 mysql.postgresql.oracle数据库取并集都是用union/union all关键字,不再赘述 二.交集: 需求:选出既在t1表又在t2表的 ...

最新文章

  1. 《评人工智能如何走向新阶段》后记(再续1)
  2. 最近一篇关于深度学习在地图-定位应用的综述
  3. python小学_小学生学python(二)
  4. 第二章 向量(d2)有序向量:二分查找
  5. 在Grails 2.0中使用Servlet 3.0异步功能
  6. nagios(icinga)借助check_hp插件监控惠普服务器硬件信息
  7. 2017.3.25 最长递增子序列 失败总结
  8. log4j 日志级别_Qt使用Log4Qt写日志
  9. python多窗口传递信息,认识QT ----- 多窗口以及窗口之间的传值
  10. 每当Xcode升级之后,都会导致原有的Xcode插件不能使用,解决办法
  11. wincc中c语言做变量自增,在WinCC中如何利用C动作实现变量自动加1-工业支持中心-西门子中国...
  12. 使用tkinter+爬虫实现网易云音乐下载器
  13. 日志查看工具 logviewer pro的使用
  14. 华为交换机导入配置_华为交换机配置导入和导出
  15. 模块划分-1 功能划分
  16. 倍福--授权文件拷贝
  17. 推荐一个多端的开发框架uni-app
  18. 对接斑马打印机 usb模式+打印机共享模式
  19. lpop 原子_高负载量的Pd单原子催化剂用于选择性催化加氢反应
  20. 水至清则无鱼,人至察则无徒

热门文章

  1. 云体系联盟助力中国中小银行联合创新基地成立
  2. 微信智能对话机器人调用第三方云函数
  3. TorBrowser和tor的使用
  4. 【基础系列】赏析Keras之父弗朗索瓦·肖莱《Python深度学习》ch1什么是深度学习
  5. 购物兔下载量突破17万!
  6. mysql 错误代码1171
  7. 男人的大实话!!(最终完全版~~) 【推荐】
  8. 升级每天正常更新欢迎_我功夫特牛:0.1.20版本正式更新,金币能买传说装备,回刷大优化...
  9. 两化融合贯标之-波特五力分析
  10. 【day4-c\c++入门-三子棋游戏】