`
z_piaoyi
  • 浏览: 22952 次
  • 性别: Icon_minigender_2
  • 来自: 河北
社区版块
存档分类
最新评论

oracle相关的查询与使用

阅读更多
基本的sql语句
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table;
ORACLE基本语句的查询与使用
SQL> select * from emp;//查询所有的字段信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp;//查询所有
SQL> select empno from emp;//查询部分字段
SQL> select empno "员工编号" from emp;//采用别名查询
SQL> select empno as "员工编号" from emp;//采用别名查询 等效于上面的效果
SQL> select distinct(hiredate) from emp;//查询所有员工的入职日期并且去掉重复的日期
SQL> select sal+comm from emp;//注意:包含空值的数学表达式求出的结果为空值
SQL> select empno||ename from emp;//||连接符 把empno与ename作为一个字段显示
SQL> select empno||ename  as "员工编号和员工姓名" from emp;//效果同上
SQL> select '员工的编号是'||empno from emp;//字符的链接
SQL> select '姓名为'||ename||'员工,所在的部门是:'||deptno as "新列" from emp;//字段的链接包号字符连接
SQL> select distinct(deptno) from emp;//查询去掉重复行的员工部门编号

条件查询
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table
[WHERE condition(s)];
Condition(s)要使用到比较运算符常用的比较运算符如下:
操作符 含义
= 等于
> 大于
>= 大于等于
< 小于
<= 小于等于
<> 不等于 等效于!=
其它操作
And 逻辑运算  逻辑与
Or  逻辑运算  逻辑或
Not 逻辑运算  逻辑否
Between 起始值 and 结束值:使用 BETWEEN 运算来显示在一个区间内的值 包含(起始结束值)
In: 使用 IN运算显示列表中的值。 In(,,,)相当于一个集合,只要出现集合中匹配的就显示
Like:
使用 LIKE 运算选择类似的值
选择条件可以包含字符或数字:
% 代表零个或多个字符(任意个字符)。
_ 代表一个字符。

Escape:
   回避特殊符号的:使用转义符。例如:将[%]转为[\%]、[_]转为[\_],然后再加上[ESCAPE ‘\’] 即可
Null:
使用 IS (NOT) NULL 判断空值。

//查询部门号为10的员工信息  部门为整数类型
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno=10;
//查询职位号为MANAGER的员工信息  岗位的类型为字符类型
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where job='MANAGER';
//查询部门号为10并且员工的职位为MANAGER的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where job='MANAGER' and deptno=10;
注意:
字符和日期要包含在单引号中。
字符大小写敏感,日期格式敏感。
默认的日期格式是 DD-MON-RR。

Where子句使用比较运算符:'>'(大于),'>='(大于等于),'='(等于),'<='(小于等于)'<'(小于).'<>'(不等于).'!>'(不大于).'!<'(不小于)

//查询部门号大于10的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno>10;
//查询薪水大于等于3000的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>=3000;
//查询薪水不等于3000的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal<>3000;
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal !=3000;
//查询薪水大于2000并且小于3000的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>2000 and sal<3000;
//查询薪水大于等于2000并且小于等于3000的员工信息

逻辑运算符的使用:'and','or','not'

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal between 1600 and 3000;
//等效于
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>=1600 and sal<=3000;
//查询部门号位10,20的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno in(10,20);
//注意:相当于如下操作:
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno =10 or deptno=20; 模糊查询:
   两种方式:'_'和'%','_'代表一个未知数,'%'代表多个
//查询员工名称以S开头的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like 'S%';
//查询员工名称以S结尾的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%S';
//查询员工名称第三个字符为N的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '__N%';
//查询员工名称中含有N的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%N%';
转义字符的使用:'\'
//查询员工名称中倒数第二个字符为%的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%\%_'escape'\';
//查询员工名称总含有%的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%\%%'escape'\';

查找检索值为空的数据:'is null'

//查询奖金为null的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where comm is null;
//查询奖金非null的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where comm is not null;
优先级表格:
优先级
1 算术运算
2 连接符
3 比较符
4 Is not null like not in
5 Not between
6 not
7 and
8 Or
备注:可以采用括号改变优先级

   关系数据库-层次关系---》网状的关系-关系数据库-对象关系。
分享到:
评论

相关推荐

    oracle日期查询相关

    ### Oracle日期查询相关知识点 #### 一、获取系统当前日期与时间 在Oracle数据库中,可以通过`SYSDATE`函数来获取系统的当前日期和时间。这是一个非常实用的功能,尤其是在需要记录数据的操作时间点时。 **示例:...

    Java使用Jdbc连接Oracle执行简单查询操作示例

    本文将通过实例形式详细分析Java基于Jdbc实现Oracle数据库的连接与查询相关操作技巧。 一、Java中Jdbc连接Oracle数据库的基本步骤 1. 导入Jdbc驱动包:在Java程序中需要引入Oracle的Jdbc驱动包,通常是oracle.jdbc...

    ORACLE分页查询效率

    根据所提供的信息,我们可以提炼出以下关于“ORACLE分页查询效率”的相关知识点: ### 一、Oracle中的分页查询 #### 1.1 分页查询的重要性 - **背景介绍**:在实际应用中,数据库查询结果往往非常庞大,一次性加载...

    oracle查询优化pdf

    这本书“Oracle查询优化PDF”很可能是对Oracle数据库查询优化技术的深入探讨,涵盖了一系列相关主题,旨在帮助数据库管理员和开发人员提升系统的效率。 首先,Oracle查询优化的基础是SQL(结构化查询语言)。优化...

    ORACLE_SQLDeveloper使用教程

    ### Oracle SQL Developer 使用教程 #### 一、Oracle Database Home Page 的使用 在开始介绍 Oracle SQL Developer 的使用之前,我们先来看看如何使用...希望这些知识能够帮助您更好地理解和使用 Oracle 相关的工具。

    Oracle查询优化改写 技巧与案例.pdf

    例如,相关子查询(correlated subqueries)在执行时可能会多次扫描同一数据集,造成不必要的计算开销。 4. 分析和优化表的连接顺序。在复杂的查询中,表的连接顺序会对查询性能产生很大影响。优化器尝试各种可能的...

    Oracle作业查询报告

    2. 查询特定部门员工信息:使用WHERE子句查询与自己同部门的所有员工,如:`SELECT * FROM emp WHERE deptno = 10;` 3. 查找最低工资员工:使用子查询找到每个部门的最低工资员工,例如:`SELECT * FROM emp WHERE ...

    oracle 迅速查询和更新大数据

    ### Oracle 迅速查询与更新大数据的关键技术 在Oracle数据库管理中,对于大数据量的处理是常见且重要的任务之一。特别是在需要对大量数据进行高效查询和更新操作时,如何优化性能成为了开发人员和技术团队必须面对...

    oracle笔记子查询

    oracle笔记子查询,有子查询相关的知识点笔记和具体的案例代码!

    ORACLE 多表查询与数据修改

    ### ORACLE 多表查询与数据修改 #### 学习目标 - **熟悉三个或四个表的连接查询**:在实际应用中,我们往往需要从多个表中获取数据以完成复杂的业务逻辑。通过本节的学习,您将能够掌握如何利用Oracle数据库进行多...

    ORACLE最大并发数查询

    使用`show parameter`命令可以查看与并发相关的系统参数。例如,执行`show parameter processes;`命令,可以显示`PROCESSES`参数的值,该参数定义了数据库实例允许的最大并发进程数,其中包括了所有类型的会话(如...

    oracle查询表碎片

    在Oracle数据库管理与优化的过程中,了解并处理表碎片是非常重要的一个环节。本文将详细介绍如何通过SQL查询来检测Oracle表的碎片情况,并对给出的SQL查询语句进行深入解析。 #### 一、Oracle表碎片概念 在Oracle...

    《Oracle查询优化改写技巧与案例》PDF版本下载.txt

    通过对《Oracle查询优化改写技巧与案例》相关内容的深入探讨,我们不仅了解了Oracle查询优化的基本原理和技术要点,还学习了一些实用的技巧和方法。希望这些知识能够帮助读者更好地理解和掌握Oracle查询优化的核心...

    cx_Oracle使用手册

    此外,cx_Oracle模块还提供了与消息队列操作相关的对象,比如MessageObjects、MessageTableObjects、MessageRowObjects和MessageQueryObjects,这些对象用于处理Oracle高级队列中的消息数据。 手册中提到的常量、...

    Oracle 查询用户,表,授权相关语句

    在Oracle数据库管理中,查询用户、表以及授权信息是日常操作的重要部分。这些操作对于数据库管理员(DBA)和开发人员来说至关重要,因为它们有助于理解数据的存储结构和权限分配。以下是一些关于如何在Oracle中执行...

    java web与Oracle数据的分页功能

    2. **构造SQL查询语句**:Oracle数据库支持使用`ROWNUM`进行分页查询。基本的SQL模板为: ```sql SELECT * FROM (SELECT t.*, ROWNUM rnum FROM (YOUR_SELECT_QUERY) t WHERE ROWNUM ) WHERE rnum &gt;= :startRow `...

    ORACLE中SQL查询优化技术

    SQL查询优化是一项复杂但非常重要的任务,它不仅涉及到SQL语句本身的结构调整,还与数据库配置、索引设计等多个方面密切相关。通过对上述方法的综合运用,可以显著提高Oracle数据库的查询性能,从而更好地支持业务...

    Oracle错误查询工具

    这个工具的核心功能是将Oracle的错误代码与对应的解释和建议关联起来,极大地简化了数据库管理员和开发人员在面对错误时的排查过程。 首先,我们来看看`oracle.html`文件。这是工具的主页面,它包含了用户交互的...

    易语言连接ORACLE数据库查询报表

    4. **执行SQL查询**:使用“打开数据库表”命令可以打开ORACLE数据库中的表,然后通过“发送SQL语句”命令执行SQL查询。查询可以是简单的SELECT语句,也可以是复杂的联接、子查询等。 5. **处理查询结果**:发送SQL...

    C#使用Oracle.ManagedDataAccess.dll轻松访问oracle数据库

    在.NET开发环境中,C#语言提供了丰富的库来与各种数据库进行交互,其中之一就是Oracle数据库。Oracle.ManagedDataAccess.dll是Oracle公司为.NET Framework提供的一款托管数据访问组件,它允许开发者无需安装Oracle...

Global site tag (gtag.js) - Google Analytics