oracle 表基本查询

介绍
在我们讲解的过程中我们利用scott 用户存在的几张表(emp,dept)为大家演示如何使用select
语句,select 语句在软件编程中非常有用,希望大家好好的掌握。

emp 雇员表

clerk 普员工
salesman 销售
manager 经理
analyst 分析师
president 总裁
mgr 上级的编号
hiredate 入职时间
sal 月工资
comm 奖金
deptno 部门

dept 部门表
deptno 部门编号
accounting 财务部
research 研发部
operations 业务部
loc 部门所在地点
salgrade 工资级别
grade 级别
losal 最低工资
hisal 最高工资

简单的查询语句

查看表结构

DESC emp;

查询所有列

SELECT * FROM dept;

切忌动不动就用select *

SET TIMING ON; 打开显示操作时间的开关,在下面显示查询时间。
CREATE TABLE users(userId VARCHAR2(10), uName VARCHAR2 (20), uPassw
VARCHAR2(30));
INSERT INTO users VALUES('a0001', '啊啊啊啊', 'aaaaaaaaaaaaaaaaaaaaaaa');

--从自己复制,加大数据量 大概几万行就可以了 可以用来测试sql 语句执行效率

INSERT INTO users (userId,UNAME,UPASSW) SELECT * FROM users;
SELECT COUNT (*) FROM users;统计行数

查询指定列

SELECT ename, sal, job, deptno FROM emp;

如何取消重复行DISTINCT

SELECT DISTINCT deptno, job FROM emp;

查询SMITH 所在部门,工作,薪水

SELECT deptno,job,sal FROM emp WHERE ename = 'SMITH';

注意:oracle 对内容的大小写是区分的,所以ename='SMITH'和ename='smith'是不同的

使用算术表达式 nvl null
问题:如何显示每个雇员的年工资?

SELECT sal*13+nvl(comm, 0)*13 "年薪" , ename, comm FROM emp;

使用列的别名

SELECT ename "姓名", sal*12 AS "年收入" FROM emp;

如何处理null 值
使用nvl 函数来处理
如何连接字符串(||)

SELECT ename || ' is a ' || job FROM emp;

使用where 子句
问题:如何显示工资高于3000 的 员工?

SELECT * FROM emp WHERE sal > 3000;

问题:如何查找1982.1.1 后入职的员工?

SELECT ename,hiredate FROM emp WHERE hiredate >'1-1 月-1982';

问题:如何显示工资在2000 到3000 的员工?

SELECT ename,sal FROM emp WHERE sal >=2000 AND sal <= 3000;

如何使用like 操作符
%:表示0 到多个字符 _:表示任意单个字符
问题:如何显示首字符为S 的员工姓名和工资?

SELECT ename,sal FROM emp WHERE ename like 'S%';

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

SELECT ename,sal FROM emp WHERE ename like '__O%';

在where 条件中使用in
问题:如何显示empno 为7844, 7839,123,456 的雇员情况?

SELECT * FROM emp WHERE empno in (7844, 7839,123,456);

使用is null 的操作符
问题:如何显示没有上级的雇员的情况?

错误写法:select * from emp where mgr = '';
正确写法:SELECT * FROM emp WHERE mgr is null;

oracle 表查询(1)的更多相关文章

  1. oracle 表查询(2)

    使用逻辑操作符号 问题:查询工资高于500 或者是岗位为MANAGER 的雇员,同时还要满足他们的姓名首字母为大写的J? or job = 'MANAGER') and ename LIKE 'J%' ...

  2. (六)Oracle 的 oracle表查询关键字

    参考:http://www.hechaku.com/Oracle/oracle_tables2.html 1.使用逻辑操作符号问题:查询工资高于500或者是岗位为manager的雇员,同时还要满足他们 ...

  3. oracle表查询

    使用scott用户中存在的emp.dept表等做演示 一.单表查询 查看表结构:desc dept; 查看所有列:select * from dept: 查询指定列:select ename,sal, ...

  4. oracle 表查询二

    1.使用逻辑操作符号问题:查询工资高于500或者是岗位为manager的雇员,同时还要满足他们的姓名首字母为大写的J?select * from emp where (sal > 500 or ...

  5. 七、oracle 表查询二

    1.使用逻辑操作符号问题:查询工资高于500或者是岗位为manager的雇员,同时还要满足他们的姓名首字母为大写的J?select * from emp where (sal > 500 or ...

  6. oracle 表查询(二)

    1.使用逻辑操作符号问题:查询工资高于500或者是岗位为manager的雇员,同时还要满足他们的姓名首字母为大写的J?select * from emp where (sal > 500 or ...

  7. 七 oracle 表查询二

    1.使用逻辑操作符号问题:查询工资高于500或者是岗位为manager的雇员,同时还要满足他们的姓名首字母为大写的J?select * from emp where (sal > 500 or ...

  8. (21)Oracle表查询进阶

    转到基本查询 一.多表查询 笛卡尔积:每张表的列数相加,行数相乘. 连接条件:得出笛卡尔积后需要用where条件筛选出正确的数据.连接条件至少需要n张表减1个 1.等值连接 连接条件为等号 selec ...

  9. oracle 表查询一

    通过scott用户下的表来演示如何使用select语句,接下来对emp.dept.salgrade表结构进行解说. emp 雇员表字段名称   数据类型       是否为空   备注-------- ...

随机推荐

  1. Word 中标题的编号变成黑框

    问题: 在使用Word编写文档时,提前拟好的标题编号会突然变成黑框(黑色的方框,黑色的矩形),如下图 解决方案: 1.将光标定位到标题中,紧邻黑框的右侧 2.按键盘左方向键使方框变成黑色 4.按键盘的 ...

  2. ORACLE 中ROWNUM用法总结!(转)

    对于 Oracle 的 rownum 问题,很多资料都说不支持>,>=,=,between...and,只能用以上符号(<.<=.!=),并非说用>,>=,=,be ...

  3. SQLSERVER 触发器 将一个服务器上的数据库中数据插入到另一个服务器上的数据库中怎么做

    首先要执行 sp_addlinkedserver '服务器ip' 然后开始写语句 insert into ip.库名字.dbo.table select * from iserted

  4. iOS 代码分类

    控件分类: 指示器 (ActivityIndicator) 提醒对话框 (AlertView) 按钮 (Button) 日历 (Calendar) 相机 (Camera) 透明指示层 (HUD) 图像 ...

  5. Javascript的AMD规范

    Javascript发展到今天,已经从一个小丑语言变成了不可替代的前端利器,已经脱离了低端的玩笑脚步,而转变为有规可依的强大语言. 本文主要讲述下如今被大力推广的AMD规范,为什么要AMD,什么场景是 ...

  6. Visual Studio vs2010 去掉中文注释红色下划线;去掉代码红色下划线;

    vs去掉下挂线也分两种: 1.去掉中文注释红色下划线,需要去掉VisualAssist下划线鸡肋功能: 1.选择Visual AssistX Options: 2.把如图所示的勾去掉,解决. 以后再次 ...

  7. spring 构造注入 异常 Ambiguous constructor argument types - did you specify the correct bean references as constructor arguments

    你可能在做项目的时候,需要在项目启动时初始化一个自定义的类,这个类中包含着一个有参的构造方法,这个构造方法中需要传入一些参数. spring提供的这个功能叫“构造注入”, applicationCon ...

  8. Weinre在iOS 7上不工作的原因

    升级到iOS 7 后发现Weinre不能工作了,通过Safari调试发现报错如下: [Error] SecurityError: DOM Exception 18: An attempt was ma ...

  9. Bootstrap 和 LESS

    Bootstrap 简介 什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的 ...

  10. openerp import l field size limit

    modify the file addons/base_import/models.py add the following line at the very begining of the _con ...