0

我试图在与日期和时间相关的一行中获得护理和实验室测试结果。护理表有 11 条特定患者的记录,实验室表有 3 条特定患者的记录,当我加入它们时,我得到 33 条记录,我想要 11 条我尝试左右加入但结果相同的记录。过程是,护士做一个测试并记录结果,如果结果超过异常然后命令实验室测试,所以护士和实验室测试之间存在时间差。

护理台

Patient No NurResult NurDate
1           8.8      4/2/2012 7:50
1          11.9      4/2/2012 11:53
1           8.3      4/2/2012 17:00
1          10.8      4/2/2012 21:42


Lab Table        
Patient No  LabResult   LabDate
1           8           4/2/2012 8:52

询问:

SELECT NUR.PATIENT,NUR.TDVALUE,NUR.TDACTDATE,NUR.TDACTTIME
    ,LT.[RESULT],SF.COLLECTIONDATE,SF.COLLECTIONTIME
FROM [LabLSpecResultTests] LT
INNER JOIN [LabLSpecimenFile] SF 
    ON LT.URN=SF.URN
LEFT OUTER JOIN dbo.NurDocumentedResults NUR
    ON SF.PATIENT=NUR.PATIENT
    AND NUR.TDACTDATE=SF.COLLECTIONDATE
WHERE TDACTDATE='20120402' 

结果应该是

Patient  NurResult      NurDate          LabResult     LabDate
    1         8.8       4/2/2012 7:50    8             4/2/2012 8:52
    1        11.9       4/2/2012 11:53   NULL          4/2/2012 8:52
    1         8.3       4/2/2012 17:00   NULL          4/2/2012 8:52
    1        10.8       4/2/2012 21:42   NULL          4/2/2012 8:52
    1         9.9       4/3/2012 7:56    NULL          4/2/2012 8:52
    1        12.1       4/3/2012 12:03   NULL          4/2/2012 8:52

我得到了什么

Patient  NurResult  NurDate          LabResult  LabDate
1         8.8       4/2/2012 7:50    8          4/2/2012 8:52
1        11.9       4/2/2012 11:53   8          4/2/2012 8:52
1         8.3       4/2/2012 17:00   8          4/2/2012 8:52
1        10.8       4/2/2012 21:42   8          4/2/2012 8:52
1         9.9       4/3/2012 7:56    8          4/2/2012 8:52
1        12.1       4/3/2012 12:03   8          4/2/2012 8:52
4

0 回答 0