TC79
/*
INSERT INTO TC79(PatientID,AdmissionDate,DischargeDate,Cost)
SELECT * FROM (
SELECT 709,TO_DATE('2011-07-27','YYYY-MM-DD'),TO_DATE('2011-07-31','YYYY-MM-DD'),450 FROM DUAL
UNION ALL
SELECT 709,TO_DATE('2011-08-01','YYYY-MM-DD'),TO_DATE('2011-08-23','YYYY-MM-DD'),2070 FROM DUAL UNION ALL
SELECT 709,TO_DATE('2011-08-31','YYYY-MM-DD'),TO_DATE('2011-08-31','YYYY-MM-DD'),90 FROM DUAL UNION ALL
SELECT 709,TO_DATE('2011-09-01','YYYY-MM-DD'),TO_DATE('2011-09-14','YYYY-MM-DD'),1260 FROM DUAL UNION ALL
SELECT 709,TO_DATE('2011-12-01','YYYY-MM-DD'),TO_DATE('2011-12-31','YYYY-MM-DD'),2790 FROM DUAL UNION ALL
SELECT 1624,TO_DATE('2011-06-07','YYYY-MM-DD'),TO_DATE('2011-06-28','YYYY-MM-DD'),1980 FROM DUAL UNION ALL
SELECT 1624,TO_DATE('2011-06-29','YYYY-MM-DD'),TO_DATE('2011-07-31','YYYY-MM-DD'),2970 FROM DUAL UNION ALL
SELECT 1624,TO_DATE('2011-08-01','YYYY-MM-DD'),TO_DATE('2011-08-02','YYYY-MM-DD'),180 FROM DUAL
)
*/
WITH CTE AS(
SELECT T.*, LEAD(ADMISSIONDATE,1) OVER(PARTITION BY PATIENTID ORDER BY ADMISSIONDATE) AS NEXTADMISSIONDATE,
CASE WHEN LEAD(ADMISSIONDATE,1) OVER(PARTITION BY PATIENTID ORDER BY ADMISSIONDATE)=T.DISCHARGEDATE+1 THEN 1
ELSE 0 END AS ISCONT
FROM TC79 T)
SELECT A.*
, CASE WHEN A.ISCONT =1 THEN
( SELECT MIN(DISCHARGEDATE) FROM CTE B WHERE B.ADMISSIONDATE>A.ADMISSIONDATE AND A.ISCONT<>B.ISCONT AND A.PATIENTID=B.PATIENTID)
ELSE A.DISCHARGEDATE END AS DISCHARGEDATE
FROM CTE A
TC79的更多相关文章
- win7 64位 TortoiseSVN-1.8.4客户端安装
下载地址链接:http://pan.baidu.com/s/1nukeBVz 密码:tc79 (32 64位都有,注意区分) next一路安装 安装好后,在需要和服务器同步的文件夹图标上--鼠标右键- ...
随机推荐
- [CLR via C#]12. 泛型
泛型(generic)是CLR和编程语言提供一种特殊机制,它支持另一种形式的代码重用,即"算法重用". 简单地说,开发人员先定义好一个算法,比如排序.搜索.交换等.但是定义算法的开 ...
- windbg学习进阶之——windbg字段名及其意义
要使用windbg分析dump必须加载正确的符号,可以通过设置Symbols File Path为"D:/Symbols;SRV*D:/Symbols*http://msdl.microso ...
- VS2010 根据模型生成数据库 打开edmx.sql文件时 vs出现无响应的解决方案
今天在VS2010 sp1+sql server 2008 R2+Win7操作系统下测试ADO.NET 实体数据模型时 ,遇到这样一个问题. 首先建好实体模型,然后"根据模型生成数据库&qu ...
- 重新想象 Windows 8.1 Store Apps (74) - 新增控件: Flyout, MenuFlyout, SettingsFlyout
[源码下载] 重新想象 Windows 8.1 Store Apps (74) - 新增控件: Flyout, MenuFlyout, SettingsFlyout 作者:webabcd 介绍重新想象 ...
- ArrayList,Hashtable,List<T>,Dictionary<K,V>
1.ArrayList ArrayList list = new ArrayList(); //for遍历 ; i < list.Count; i++) { SE se=(SE)list[i]; ...
- Android从零开始——Android开发环境的安装
Android开发环境的安装 1 IDE Android可以使用开发的IDE有Eclipse 或者 Android Studio.Android Studio还处于v 0.1.x版本,是early a ...
- Java 进程占用 VIRT 虚拟内存超高的问题研究
1. 现象 最近发现线上机器 java 8 进程的 VIRT 虚拟内存使用达到了 50G+,如下图所示: 2. 不管用的 -Xmx 首先第一想到的当然使用 java 的 -Xmx 去限制堆的使用.但是 ...
- C# 分支语句
选择语句 if,else if是如果的意思,else是另外的意思,if后面跟()括号内为判断条件,如果符合条件则进入if语句执行命令.如果不符合则不进入if语句.else后不用加条件,但是必须与if配 ...
- 用QQ号登陆Sharepoint,研究到最后关头卡住了。大家发力呀
此项目未完成,登陆不了SharePoint,大家研究吧,折腾吧..... 已经完成的部分有:已经可以获取到腾讯用户信息,如: Get Access Token===============access ...
- Struts2(十五)实现文件上传
一.导入包 需要将commons-fileupload和commons-io包和struts包一起导入 实现步骤: 在Jsp页面实现客户端选择上传文件 配置Struts.xml,拦截器会自动接收上传的 ...