`
lpm528
  • 浏览: 81159 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

oracle 统计表中数据信息

 
阅读更多
select e.deptno as 部门编号,
       d.dname as 部门名称,
       count(*) as 部门人数,
       sum(case 
          when e.sal>=2000 then 1 else 0 
          end) as 工资大于等于2000人数,
       sum(case
          when e.sal<2000 then 1 else 0
          end) as 工资小于2000人数
from emp e,dept d
where e.deptno=d.deptno
group by e.deptno,d.dname

==============================================================

姓名        体征       数值 
--------- ---------- -------- 
美男1       身高       1.60 
美男1       体重       60 
美男1       胸围       79 
美男2       身高       1.69 
美男2       体重       55 
美男2       胸围       77 

转换为如下结果:

姓名    身高     体重      胸围 
--------- ---------- -------- 
美男1   1.60     60        79 
美男2   1.69     55        77 

SQL语句:

SELECT 姓名,
CASE WHEN 体征=""身高"" THEN MAX(数值) END 身高,
CASE WHEN 体征=""体重"" THEN MAX(数值) END 体重,
CASE WHEN 体征=""胸围"" THEN MAX(数值) END 胸围 
FROM 
美男 GROUP BY 姓名,体征

 

==============================================================

查询哪个部门没有员工:

select d.deptno
from emp e,dept d
where d.deptno=e.deptno(+) and e.deptno is null

select d.deptno
from dept d  left join emp e
on d.deptno=e.deptno 
where e.deptno is null

===================================================================  

 学生表student(学号,姓名,性别,年龄),课程表course(编号,课程名称),选课表sc(学号,课程编号,成绩)

    查询选修了5门课程的学生学号和姓名

select s.id,s.name
from student s
where (select count(*) from sc where sc.id=s.id)=5

 

 ====================================================================

查询公司工资最高的前三位:

select * from (select * from emp order by sal desc) where rownum<=3

 

 

 

分享到:
评论

相关推荐

    ORACLE统计表记录数

    ORACLE 数据库中如何统计表记录数的过程说明

    Oracle统计一天内每小时的数据量

    Oracle统计一天内每小时的数据量。在某小时内有数据,该时间段会被统计出来;该时间段内没有交易,该时间段不会被统计出来,默认为0即可

    Oracle Mysql DM等数据库统计表数据量和条数.docx

    通过调用数据库内置表,视图,函数,存储过程及自定义函数等实现达梦,mysql和oracle数据库表的数据量和数据条数的统计

    Oracle查询表里的重复数据方法

    一、背景  一张person表,有id和name的两个字段,id是唯一的不允许重复,id相同则认为是重复的记录。 二、解决 ...Oracle删除重复数据的SQL(删除所有): 删除重复数据的基本结构写法: 想要删除这些

    Oracle 统计用户下表的数据量实现脚本

    给大家分享Oracle 统计用户下表的数据量实现脚本,非常不错,具有参考借鉴价值,需要的朋友参考下吧

    查询oracle表以及统计数据库的使用情况

    查询oracle表以及统计数据库的使用情况,是统计数据库使用情况的很好例子。

    关于Oracle多表连接,提高效率,性能优化操作

    执行路径:ORACLE的这个功能大大地提高了SQL的执行性能并节省了内存的使用:我们发现,单表数据的统计比多表统计的速度完全是两个概念.单表统计可能只要0.02秒,但是2张表联合统计就可能要几十表了. 这是因为ORACLE只对...

    oracle查询一个月之内数据

    oracle查询一个月之内数据,例如查询某个月用户使用短信多少跳

    统计oracle数据库总记录数

    统计oracle的一个库所拥有的记录数,思路是先得到数据库里所有的表,然后再统计每个表里面有多少条记录,累加最后得到总记录数。

    ORACLE多表查询优化

    不错,收集在一块方便查看 这里提供的是执行性能的优化,而不是后台数据库优化器资料: 参考数据库开发性能方面的各种问题,收集了一些优化方案统计如下

    提高ORACLE数据库的查询统计速度

    提高ORACLE数据库的查询统计速度,非常实用

    oracle动态性能表

     db block changes:那部分造成SGA中数据块变化的insert,update或delete操作数 这项统计可以大概看出整体数据库状态。在各项事务级别,这项统计指出脏缓存比率。  execute count:执行的sql语句数量(包括递归sql...

    Oracle连续相同数据的统计

    今天复习一下之前用到的连续相同数据的统计。 首先,创建一个简单的测试表,这里过程就略过了,直接上表(真的是以简单为主,哈哈…) 第一种写法row_number(): SELECT val,COUNT(*) FROM (SELECT ID,val, row_number() ...

    Oracle数据表分区的策略

    本文描述通过统计分析出医院信息系统需分区的表,对需分区的表选择分区键,即找出包括在你的分区键中的列(表的属性),对大型数据的管理比较有意义, 本文的工作在Oracle8.1.6下实现。 Oracle虽然是一个大型的DBMS,...

    数据库mysql/oracle通用2022节假日脚本数据

    数据库mysql/oracle通用2022节假日数据脚本可直接使用,包含年、月、日、节假日、工作日、休息日。项目中实际使用实践,请大家放心下载。

    Oracle10g DBA经常使用的动态性能视图和数据字典

    v$sqlarea:共享池中使用当前光标的统计信息,光标是一块内存区域,有Oracle处理SQL语句时打开。 v$statname:在v$sesstat中报告各个统计的含义 v$sysstat:基于当前操作会话进行的系统统计 v$waitstat:出现一个...

    Oracle 数据表分区的策略

    本文描述通过统计分析出医院信息系统需分区的表,对需分区的表选择分区键,即找出包括在你的分区键中的列(表的属性),对大型数据的管理比较有意义, 本文的工作在Oracle8.1.6下实现。 Oracle虽然是一个大型的DBMS,...

    全国五级联动省市县数据(Oracle)

    FJ_PEOPLE_STAT (本人自建的测试表,用于统计人口数,可用层次查询,经测试过可用,最后全省人口数=表所有的行人口数的累计) STAT DATE CODE VARCHAR2(100) NAME VARCHAR2(300) PEOPLE_NUM NUMBER(6)

    统计分析信息拷贝

     ORACLE执行成本分析时首先取出所应用表及索引的统计数据进行分析,其中数据行数是一个重要的参数,因为ORACLE在分析表大小时行数为主要参数,如果进行两个表联合时,ORACLE会通过分析表的大小,决定应用小表进行全...

    Oracle 当前用户下所有表的记录总数

    您可能感兴趣的文章:shell脚本操作oracle删除表空间、创建表空间、删除用户杀掉oracle在线用户脚本分享[Oracle] 如何使用触发器实现IP限制用户登录在命令行下进行Oracle用户解锁的语句深入探讨:Oracle中如

Global site tag (gtag.js) - Google Analytics