2010-04-07 154 views
3

我有我清理出来的数据使用SSIS平面文件,输出看起来像这样:比较日期字段

 
MEDICAL ADMIT  PATIENT  PATIENT   DATE OF DX 
REC NO  DATE  NUMBER  NAME  DISCHARGE Code  DRG # 

123613 02/16/09 12413209 MORIBALDI ,GEMMA 02/19/09 428.20  988  
130897 01/23/09 12407193 TINLEY ,PATRICIA 01/23/09 535.10  392  
139367 02/27/09 36262509 THARPE ,GLORIA 03/05/09 562.10  392 

141954 02/25/09 72779499 SHUMATE ,VALERIA 02/25/09 112.84  370 
141954 03/07/09 36271732 SHUMATE ,VALERIA 03/10/09 493.92  203 

145299 01/21/09 12406294 BAUGH ,MARIA  01/21/09 366.17  117 

并附着在从屏幕截图的报告(最终结果)最终的excel报告。

所以发生的事情是如果同名或同一帐号重复,那意味着患者再次进入医院并需要包括在报告中。 ![替代文本] [1]

什么,我需要做的是...

消除是不重复的任何行(不是每个人都在这个文件中已经再次住院) 和日期比较得到ReAdmitdate和ReDischargedate

我甩的数据转换成SQL表,并试图比较的日期要弄清楚“ReAdmitdate”和“ReDischargedate”

任何帮助表示赞赏。

+2

**我确定希望这不是实际的数据与实际的患者信息** – 2010-04-07 13:41:01

+0

当然KM :)组成的数据,我们实际上使用脚本来获得由HIPPA创建的测试日期,无论如何感谢 – Huslayer 2010-04-08 14:01:34

回答

1

患者是否有唯一标识符?我假设患者号码是每个患者的唯一标识符,并且medical_rec_no是增量型的。

该查询的工作方式是将患者记录加入同一患者的记录中,该记录具有较晚的录取日期。

SELECT p1.patient_number, p1.admit_date, 
    p2.admit_date as readmit_date, p2.discharge_date AS redischarge_date 
FROM patient p1 
    INNER JOIN patient p2 
    ON p1.patient_number = p2.patient_number AND 
     p2.medical_rec_no <> p1.medical_rec_no 
    LEFT OUTER JOIN patient p3 
    ON p3.patient_number = p1.patient_number AND 
     p3.medical_rec_no <> p1.medical_rec_no AND 
     p3.admit_date < p2.admit_date 
WHERE p3.patient_number IS NULL 
ORDER BY p1.patient_number, p1.admit_date, p1.medical_rec_no 
+0

干杯回复和好主意......感谢Marcus 但你的查询没有得到任何结果!不知道为什么,但给了我的想法,我想出了 但我的问题现在我得到重复,如果有人已承认3或4次! 我只是无法弄清楚!帮助请 我会用重复的结果发布样本来解释我的问题。 感谢您的帮助,上帝保佑分享知识 – Huslayer 2010-04-08 15:37:00

+0

SELECT A.MedRecNo, A.AdmitDate,B.AdmitDate AS ReAdmitDate, A.DateOfDischarge,B.DateOfDischarge AS ReDateOfDischarge, A.PatientNo,B.PatientNo AS RePatientNumber, A.PatientName, A.DXCode,B.DXCode AS ReAdmitDXCode, A.DrgNo,B.DrgNo AS ReAdmitDrgNo FROM报告甲 INNER JOIN报告乙ON A.MedRecNo = B.MedRecNo AND A.AdmitDate <> B.AdmitDate AND A.AdmitDate Huslayer 2010-04-08 15:38:13

+0

@Huslayer,如果我的假设是正确的,查询应该可以工作。如果我的列有错误,请调整查询或发布模式,然后我将更新查询。主要记录关键字栏是什么,病人的唯一标识符是什么? – 2010-04-08 16:02:19

0

我曾经对数据仓库团队的一家医院工作(使用的整个组织建设立方体),我们有参观人数由去,从那里我们能确定它是否是预约集(或重新承认你引用它)。你有任何预约号码和访问号码,将它们添加到你的SQL表格可能会很有用。

+0

不,我们不使用预约号码和访问号码,我希望! lol – Huslayer 2010-04-08 15:39:05

+0

MRN应该是唯一的(如上所发现)= P – ajdams 2010-04-08 19:58:26