`
touchmm
  • 浏览: 1043995 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

oracel查询1

 
阅读更多

--======================

--author:yeeXun

--date: 2010-11-26 10:35:00

--address:17-304

--======================

ConnectedtoOracleDatabase10gEnterpriseEditionRelease10.2.0.1.0

Connectedasscott

SQL>selectdeptno,avg(sal) fromempgroupby deptno;

DEPTNOAVG(SAL)

----------------

301566.66666

202175

102916.66666

SQL>select*fromemp;

EMPNOENAMEJOBMGRHIREDATESALCOMMDEPTNO

----------------------------------------------------------------

7369SMITHCLERK79021980-12-17800.0020

7499ALLENSALESMAN76981981-2-201600.00300.0030

7521WARDSALESMAN76981981-2-221250.00500.0030

7566JONESMANAGER78391981-4-22975.0020

7654MARTINSALESMAN76981981-9-281250.001400.0030

7698BLAKEMANAGER78391981-5-12850.0030

7782CLARKMANAGER78391981-6-92450.0010

7788SCOTTANALYST75661987-4-193000.0020

7839KINGPRESIDENT1981-11-175000.0010

7844TURNERSALESMAN76981981-9-81500.000.0030

7876ADAMSCLERK77881987-5-231100.0020

7900JAMESCLERK76981981-12-3950.0030

7902FORDANALYST75661981-12-33000.0020

7934MILLERCLERK77821982-1-231300.0010

14rowsselected

SQL>selecta.ename,a.sal,a.deptno,b.avgsalfroma,(selectdeptno,avg(sal)avgsalfromempgroupbydeptno)bwherea.deptno=b.deptnoanda.sal>b.avgsal;

selecta.ename,a.sal,a.deptno,b.avgsalfroma,(selectdeptno,avg(sal)avgsalfromempgroupbydeptno)bwherea.deptno=b.deptnoanda.sal>b.avgsal

ORA-00942:表或视图不存在

--表视图:只存在于查询期间,指定别名不能用“as”关键字,如果指定列的别名可以使用关键字“as”

SQL>selecta.ename,a.sal,a.deptno,b.avgsalfromempa,(selectdeptno,avg(sal)avgsalfromempgroupbydeptno)b wherea.deptno=b.deptnoanda.sal>b.avgsal;

ENAMESALDEPTNOAVGSAL

-----------------------------------

ALLEN1600.00301566.66666

JONES2975.00202175

BLAKE2850.00301566.66666

SCOTT3000.00202175

KING5000.00102916.66666

FORD3000.00202175

6rowsselected

SQL>select*fromemp;

EMPNOENAMEJOBMGRHIREDATESALCOMMDEPTNO

----------------------------------------------------------------

7369SMITHCLERK79021980-12-17800.0020

7499ALLENSALESMAN76981981-2-201600.00300.0030

7521WARDSALESMAN76981981-2-221250.00500.0030

7566JONESMANAGER78391981-4-22975.0020

7654MARTINSALESMAN76981981-9-281250.001400.0030

7698BLAKEMANAGER78391981-5-12850.0030

7782CLARKMANAGER78391981-6-92450.0010

7788SCOTTANALYST75661987-4-193000.0020

7839KINGPRESIDENT1981-11-175000.0010

7844TURNERSALESMAN76981981-9-81500.000.0030

7876ADAMSCLERK77881987-5-231100.0020

7900JAMESCLERK76981981-12-3950.0030

7902FORDANALYST75661981-12-33000.0020

7934MILLERCLERK77821982-1-231300.0010

14rowsselected

--分页,

SQL>selecta.*,rownumru from(select*fromemp)a;

EMPNOENAMEJOBMGRHIREDATESALCOMMDEPTNORU

--------------------------------------------------------------------------

7369SMITHCLERK79021980-12-17800.00201

7499ALLENSALESMAN76981981-2-201600.00300.00302

7521WARDSALESMAN76981981-2-221250.00500.00303

7566JONESMANAGER78391981-4-22975.00204

7654MARTINSALESMAN76981981-9-281250.001400.00305

7698BLAKEMANAGER78391981-5-12850.00306

7782CLARKMANAGER78391981-6-92450.00107

7788SCOTTANALYST75661987-4-193000.00208

7839KINGPRESIDENT1981-11-175000.00109

7844TURNERSALESMAN76981981-9-81500.000.003010

7876ADAMSCLERK77881987-5-231100.002011

7900JAMESCLERK76981981-12-3950.003012

7902FORDANALYST75661981-12-33000.002013

7934MILLERCLERK77821982-1-231300.001014

14rowsselected

SQL>selecta.*,rownumrufrom(select*fromemp)awhereru<=10;

selecta.*,rownumrufrom(select*fromemp)awhereru<=10

ORA-00904:"RU":标识符无效

-- 先找出指定上限范围内的数据

SQL>selecta.*,rownumru from(select*fromemp )awhererownum<=10;

EMPNOENAMEJOBMGRHIREDATESALCOMMDEPTNORU

--------------------------------------------------------------------------

7369SMITHCLERK79021980-12-17800.00201

7499ALLENSALESMAN76981981-2-201600.00300.00302

7521WARDSALESMAN76981981-2-221250.00500.00303

7566JONESMANAGER78391981-4-22975.00204

7654MARTINSALESMAN76981981-9-281250.001400.00305

7698BLAKEMANAGER78391981-5-12850.00306

7782CLARKMANAGER78391981-6-92450.00107

7788SCOTTANALYST75661987-4-193000.00208

7839KINGPRESIDENT1981-11-175000.00109

7844TURNERSALESMAN76981981-9-81500.000.003010

10rowsselected

--再指定下限范围内的数据

SQL>select*from(selecta.*,rownumru from(select*fromemp)awhererownum<=10 )whereru>=6 ;

EMPNOENAMEJOBMGRHIREDATESALCOMMDEPTNORU

--------------------------------------------------------------------------

7698BLAKEMANAGER78391981-5-12850.00306

7782CLARKMANAGER78391981-6-92450.00107

7788SCOTTANALYST75661987-4-193000.00208

7839KINGPRESIDENT1981-11-175000.00109

7844TURNERSALESMAN76981981-9-81500.000.003010


--修改显示数据,只需要修改最里层的查询即可

SQL>select*from(selecta.*,rownumrufrom(selectename,sal fromemp)awhererownum<=10 )whereru>=6 ;

ENAMESALRU

-----------------------------

BLAKE2850.006

CLARK2450.007

SCOTT3000.008

KING5000.009

TURNER1500.0010

SQL>select*from(selecta.*,rownumrufrom(selectename,salfromemporderbysal)awhererownum<=10)whereru>=6;

ENAMESALRU

-----------------------------

MILLER1300.006

TURNER1500.007

ALLEN1600.008

CLARK2450.009

BLAKE2850.0010

SQL>selectcount(*) fromemp;

COUNT(*)

----------

14

SQL>createtablemyemp(id,ename,sal)asselectempno,ename,salfrome,mp;

createtablemyemp(id,ename,sal)asselectempno,ename,salfrome,mp

ORA-00942:表或视图不存在

--数据复制法

SQL>createtablemyemp(id,ename,sal)asselect empno,ename,salfromemp ;

Tablecreated

SQL>descmyemp;

NameTypeNullableDefaultComments

----------------------------------------

IDNUMBER(4)Y

ENAMEVARCHAR2(10)Y

SALNUMBER(7,2)Y

SQL>select*frommyemp;

IDENAMESAL

------------------------

7369SMITH800.00

7499ALLEN1600.00

7521WARD1250.00

7566JONES2975.00

7654MARTIN1250.00

7698BLAKE2850.00

7782CLARK2450.00

7788SCOTT3000.00

7839KING5000.00

7844TURNER1500.00

7876ADAMS1100.00

7900JAMES950.00

7902FORD3000.00

7934MILLER1300.00

14rowsselected

SQL>selectename,sal,jobfromempwheresal> 2500;

ENAMESALJOB

----------------------------

JONES2975.00MANAGER

BLAKE2850.00MANAGER

SCOTT3000.00ANALYST

KING5000.00PRESIDENT

FORD3000.00ANALYST

SQL>selectename,sal,jobfromempwheresal>2500union

2selectename,sal,jobfromempwherejon='manager';

selectename,sal,jobfromempwheresal>2500union

selectename,sal,jobfromempwherejon='manager'

ORA-00904:"JON":标识符无效

SQL>

SQL>selectename,sal,jobfromempwheresal>2500union

2selectename,sal,jobfromempwherejon='manager'

SQL>

SQL>selectename,sal,jobfromempwheresal>2500union

2selectename,sal,jobfromempwherejob='manager';

ENAMESALJOB

----------------------------

BLAKE2850.00MANAGER

FORD3000.00ANALYST

JONES2975.00MANAGER

KING5000.00PRESIDENT

SCOTT3000.00ANALYST

SQL>selectename,sal,jobfromempwheresal>2500union

2selectename,sal,jobfromempwherejob='MANAGER';

ENAMESALJOB

----------------------------

BLAKE2850.00MANAGER

CLARK2450.00MANAGER

FORD3000.00ANALYST

JONES2975.00MANAGER

KING5000.00PRESIDENT

SCOTT3000.00ANALYST

6rowsselected

SQL>selectename,sal,jobfromempunionall

2selectename,sal,jobfromempwherejob='MANAGER';

ENAMESALJOB

----------------------------

SMITH800.00CLERK

ALLEN1600.00SALESMAN

WARD1250.00SALESMAN

JONES2975.00MANAGER

MARTIN1250.00SALESMAN

BLAKE2850.00MANAGER

CLARK2450.00MANAGER

SCOTT3000.00ANALYST

KING5000.00PRESIDENT

TURNER1500.00SALESMAN

ADAMS1100.00CLERK

JAMES950.00CLERK

FORD3000.00ANALYST

MILLER1300.00CLERK

JONES2975.00MANAGER

BLAKE2850.00MANAGER

CLARK2450.00MANAGER

17rowsselected

SQL>selectdistinct ename,sal,jobfromemp;

ENAMESALJOB

----------------------------

WARD1250.00SALESMAN

SMITH800.00CLERK

KING5000.00PRESIDENT

TURNER1500.00SALESMAN

JAMES950.00CLERK

FORD3000.00ANALYST

CLARK2450.00MANAGER

BLAKE2850.00MANAGER

ADAMS1100.00CLERK

SCOTT3000.00ANALYST

MILLER1300.00CLERK

ALLEN1600.00SALESMAN

MARTIN1250.00SALESMAN

JONES2975.00MANAGER

14rowsselected

SQL> exits;

-the end-

分享到:
评论

相关推荐

    oracle SQL查询工具

    oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具...

    SQL与ORACLE建立链接并进行查询及插入操作

    二、在SQL中执行Oracle查询 1. SQL语句:使用标准的SQL查询语法,例如SELECT语句,来检索Oracle数据库中的数据。例如,`SELECT * FROM table_name` 将返回表table_name中的所有记录。 2. Oracle特定函数:Oracle...

    oracle查询用户信息

    oracle查询用户信息1.查看所有用户2.查看用户或角色系统权限3.查看角色4.查看用户对象权限5.查看所有角色

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

    《Oracle查询优化改写技巧与案例》不讲具体语法,只是以案例的形式介绍各种查询语句的用法。第1~4章是基础部分,讲述了常用的各种基础语句,以及常见的错误和正确语句的写法。这部分的内容应熟练掌握,因为日常查询...

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

    《Oracle查询优化改写技巧与案例》不讲具体语法,只是以案例的形式介绍各种查询语句的用法。第1~4章是基础部分,讲述了常用的各种基础语句,以及常见的错误和正确语句的写法。这部分的内容应熟练掌握,因为日常查询...

    oracle查询优化pdf

    Oracle查询优化是数据库管理中的关键环节,它涉及到提高数据检索速度、降低系统资源消耗和提升整体应用性能。这本书“Oracle查询优化PDF”很可能是对Oracle数据库查询优化技术的深入探讨,涵盖了一系列相关主题,...

    通用查询分析器(Oracle数据查询)

    1. **图形化界面**:与命令行界面相比,通用查询分析器提供了一个用户友好的图形界面,使得SQL语句的编写、执行和结果查看变得更加直观和便捷。 2. **代码编辑器**:内置的代码编辑器支持SQL语法高亮,自动完成,...

    【oracle】oracle查询优化改写

    在"Oracle_chaxunyouhuagaixiejiqiaoyuanli_20180929.pdf"这份文档中,可能会详细讲解以上提到的概念,并提供实际案例和技巧,帮助你深入理解和应用Oracle查询优化改写。通过学习这些内容,你将能够更好地诊断和解决...

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

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

    oracle 查询部分ppt

    《玩转Oracle查询部分》这份PPT是针对Oracle数据库系统中的查询操作进行深入探讨的资料。Oracle数据库系统作为全球广泛使用的数据库管理系统之一,其查询语言SQL(Structured Query Language)是数据库管理员、开发...

    oracle查询一个月之内数据

    根据提供的标题、描述、标签及部分内容,我们可以了解到本篇文章主要关注的是如何在Oracle数据库中查询一个月内的数据。这里的关键在于日期范围的确定以及如何利用Oracle的内置函数来完成这一任务。接下来,我们将...

    Oracle查询语句大全-精华版

    Oracle 查询语句大全-精华版 Oracle 查询语句大全是 Oracle 数据库管理系统中最基本也是最重要的组成部分,用于管理和维护数据库。本文将详细介绍 Oracle 查询语句的使用方法和实践操作。 一、创建用户和授权 在 ...

    sql查询oracle时间段操作

    例如,如果你有一个名为`orders`的表,其中包含`order_date`列,你可以这样查询2020年1月1日至2020年12月31日之间的订单: ```sql SELECT * FROM orders WHERE order_date BETWEEN DATE '2020-01-01' AND DATE '...

    oracle查询死锁语句

    oracle查询死锁语句,并能根据根据ID值杀死锁表的进程!

    Oracle 多表查询优化

    Oracle 多表查询优化 Oracle 多表查询优化是指在 Oracle 数据库管理系统中,为了提高多表查询的效率和性能采取的一些优化策略和技术。在 Oracle 中,多表查询是指从多个表中检索数据的操作。这种操作可能会占用大量...

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

    Java使用Jdbc连接Oracle执行简单查询操作示例 Java使用Jdbc连接Oracle执行简单查询操作,是指使用Java语言通过Jdbc(Java Database Connectivity)连接Oracle数据库并执行简单查询操作的过程。本文将通过实例形式...

    Oracle 数据查询器

    Oracle 数据查询器是一款由Delphi编程语言开发的工具,专门用于高效、便捷地查询Oracle数据库中的信息。Delphi是一款强大的Windows应用开发环境,以其高效的编译器和丰富的VCL(Visual Component Library)组件库...

    Oracle查询优化技巧

    Oracle查询的优化技巧,对大数据量查询的时候可以节省不少时间。

    oracle到sqlserver 跨库查询

    .oracle 到 SQL Server 跨库查询 Oracle 到 SQL Server 跨库查询是指通过网关工具将数据从 SQL Server 数据库中抽取到 Oracle 数据库中。这个过程需要安装和配置网关软件,并进行相应的设置和配置。 一、网关软件...

Global site tag (gtag.js) - Google Analytics