ORACLE-SQL(二)
CreateTime--2017年6月1日14:36:37
Author:Marydon
一、SQL语句
(二)提升篇
1.2.3 分页,分组,计数,排序
/**
* 返回数据
* FORGID 医疗机构ID
* FRCODE 县区编码
* FORGNAME 医疗机构名称
* FCENNAME_TEM_COUNT 名称不对称计数
* ISNULLCENCODE_COUNT 未对照计数
* TOTALCOUNT L_DIAITEM_ERROR表中共有多少条数据
*/
SELECT T3.*
FROM (SELECT T2.*, ROWNUM ROWNO
FROM (SELECT T.FORGID,
T1.FRCODE,
T1.FORGNAME,
SUM(NVL(T.NCCW, 0)) FCENNAME_TEM_COUNT,
SUM(NVL(T.WDZ, 0)) ISNULLCENCODE_COUNT,
TOTALCOUNT
FROM L_DIAITEM_ERROR T, TORGANIZATION T1
WHERE T.FORGID = T1.FORGID
GROUP BY T.FORGID, T1.FORGNAME, T1.FORGSEQ, T1.FRCODE
ORDER BY T1.FORGSEQ) T2
WHERE ROWNUM <= V_END) T3
WHERE T3.ROWNO >= V_START;
注意:
a.TOTALCOUNT是已存在的一个变量,这里不作为关注重点;
b.被group by的数据,要想查询表中的某个字段,有且只有两种方式:
方式一:
在group by 后面加上想要查询出来的字段
方式二:
对于数字列,使用求和函数sum()实现查询
否则,会报错:不是group by 表达式
CreateTime--2017年1月20日17:19:04
1.2.4 不同数据库间建立连接
情景:一个库访问另一个库的某张表
UpdateTime--2017年7月17日16:02:26
1.2.7 将查询的计数结果列转行
实例:对两表满足条件的数据进行计数,并横向展示查询结果
sql1:纵向展示(雏形)
SELECT COUNT(1) COUNTRESULT
FROM CONSULT_INFO T
WHERE T.CON_ORG_ID = ''
AND T.CONSULT_STATUS = 0
UNION ALL
SELECT COUNT(1) COUNTRESULT
FROM OUTPATIENT_CONSULT_INFO T2
WHERE T2.CON_ORG_ID = ''
AND T2.CONSULT_STATUS = 0
查询结果:

sql2:两行两列展示
SELECT COUNT(1) AS COUNTRESULT1, 0 AS COUNTRESULT2
FROM CONSULT_INFO T
WHERE T.CON_ORG_ID = ''
AND T.CONSULT_STATUS = 0
UNION ALL
SELECT 0 AS COUNTRESULT1, COUNT(1) AS COUNTRESULT2
FROM OUTPATIENT_CONSULT_INFO T2
WHERE T2.CON_ORG_ID = ''
AND T2.CONSULT_STATUS = 0
查询结果:

sql3:最终实现
SELECT SUM(COUNTRESULT1) COUNTRESULT1, SUM(COUNTRESULT2) COUNTRESULT2
FROM (SELECT COUNT(1) AS COUNTRESULT1, 0 AS COUNTRESULT2
FROM CONSULT_INFO T
WHERE T.CON_ORG_ID = ''
AND T.CONSULT_STATUS = 0
UNION ALL
SELECT 0 AS COUNTRESULT1, COUNT(1) AS COUNTRESULT2
FROM OUTPATIENT_CONSULT_INFO T2
WHERE T2.CON_ORG_ID = ''
AND T2.CONSULT_STATUS = 0)
查询结果:

相关推荐:
ORACLE-SQL(二)的更多相关文章
- 7.26实习培训日志-Oracle SQL(二)
Oracle SQL(二) 条件表达式 CASE 语句 或者DECODE 函数,两者均可实现 IF-THEN-ELSE 的逻辑,相比较而言,DECODE 更加简洁 SELECT last_name , ...
- Oracle sql语句执行顺序
sql语法的分析是从右到左 一.sql语句的执行步骤: 1)词法分析,词法分析阶段是编译过程的第一个阶段.这个阶段的任务是从左到右一个字符一个字符地读入源程序,即对构成源程序的字符流进行扫描然后根据构 ...
- Could not load oracle/sql/converter_xcharset/lx20354.glb.
一.错误描述: 此错误导致了web 服务器停止服务,应该属于“不能连接Oracle”的错误. 二.具体错误信息: 信息: Illegal access: this web application in ...
- Oracle SQL tuning 步骤
Oracle SQL tuning 步骤 SQL是的全称是Structured Query Language(结构化查询语言).SQL是一个在80年代中期被使用的工业标准数据库查询语言.不要把SQL语 ...
- 介绍几种大型的Oracle/SQL Server数据库免费版
我们知道,Oracle和SQL Server等大型数据库也都存在一些免费的版本,这些免费的版本已经能够满足许多中小项目的需求.对于在校大学生来说,从学习的目标上来讲,安装免费版的大型数据库也就足够用了 ...
- Oracle SQL 基本操作之 用户权限管理方法
Oracle SQL 基本操作之 用户权限管理方法 最近把有关用户操作和权限管理的东西整理了一下,虽然不少博客都有过类似的整理,但是自己发现他们的内容或多或少都有些错误.于是,本人亲自对每条语句进行 ...
- Oracle SQL 语言分类
Oracle SQL语句分类 2008-06-17 11:15:25 分类: Linux * 2008/06/17 星期二*蒙昭良*环境:WindowsXP + Oracle10gR2*Oracl ...
- Oracle SQL优化[转]
Oracle SQL优化 1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化 ...
- Oracle SQL优化器简介
目录 一.Oracle的优化器 1.1 优化器简介 1.2 SQL执行过程 二.优化器优化方式 2.1 优化器的优化方式 2.2 基于规则的优化器 2.3 基于成本的优化器 三.优化器优化模式 3.1 ...
- Oracle SQL调优记录
目录 一.前言 二.注意点 三.Oracle执行计划 四.调优记录 @ 一.前言 本博客只记录工作中的一次oracle sql调优记录,因为数据量过多导致的查询缓慢,一方面是因为业务太过繁杂,关联了太 ...
随机推荐
- ASP.NET MVC中的Session以及处理方式
最近在ASP.NET MVC项目中碰到这样的情况:在一个controller中设置了Session,但在另一个controller的构造函数中无法获取该Session,会报"System.N ...
- 25LINQ拾遗及实例
投影 □ 遍历数组索引,Select获取 int[] indexes = {0, 2}; string[] strs = {"a", "b", " ...
- Android实例剖析笔记(四)
摘要:分析NoteEditor这个类和以及Content Provider机制 NoteEditor深入分析 首先来弄清楚“日志编辑“的状态转换,通过上篇文章的方法来做下面这样一个实验,首先进入“日志 ...
- Gradle在Windows环境与Linux上配置有哪些不同?
我的开发环境:Windows + Android Studio + Gradle 2.8 all + Jenkins 公司CI 服务器环境: Linux + Gradle 2.10 bin + Jen ...
- TPL中限制进程数量
The MaxDegreeOfParallelism sets the maximum number of simultaneous threads that will be used for the ...
- CAS工作流程
CAS3.0的工作流程: 0.app将用户转发到CAS处, 并将自己的url作为callback参数传给CAS. 1.CAS验证用户成功(authentication) 2.生成用户实体(princi ...
- Git remotes/origin/pr/* 分支清理
代码在gitHub上托管,每次git pull完后,用git branch -a都可以看到一堆remotes/origin/pr/*分支: 可以通过两种方式去除: 1,修改git的config文件找到 ...
- Mysql数据库事务及隔离级别学习测试
参考了这篇文章的一些内容: http://xm-king.iteye.com/blog/770721 记住以下这张表: 我在springdemo库里面建了一个表: CREATE TABLE `tx` ...
- 百度编辑器ueditor通过ajax方式提交,不需要事先转义字符的方法(异常:从客户端(xxx)中检测到有潜在危险的 Request.Form 值)
最近项目中使用百度编辑神器ueditor,确实是很好用的一款编辑器.官网教程提供的与后端数据交互都是跟表单方式有关的,项目中使用的是ajax方式提交,因此出现了不少问题,现在记录备忘下. 环境:.ne ...
- Android Studio体验(二)--创建项目和Genymotion试用
上周日已经体验了一把Android Studio顺便没事点了点其他功能,不过还是从自己创建项目开始说吧,首先我们要熟悉Android Studio中的Project 和 Module 两个概念.And ...