我需要从sybase ase 15.5中另一个表中的日期起24小时内从一个表中提取值。
这是我的错误代码:
SELECT p_generaldata.admissiontime,*
FROM Patient.dbo.P_MonVals P_MonVals
INNER JOIN Patient.dbo.P_GeneralData P_GeneralData
ON P_MonVals.PatientID=P_GeneralData.PatientID
where p_generaldata.admissiontime < P_MonVals.entertime +1
order by p_generaldata.patientid ASC
我试图返回p_monvals中的所有行,其中该表中的entertime在入场时间后不到24小时。
错误即时获取是INT与DATETIME不兼容
任何帮助非常感谢
谢谢
答案 0 :(得分:0)
答案 1 :(得分:0)
查看DateAdd
功能,并在entertime
docs中的示例:
将一天添加到日期:
declare @a date
select @a = "apr 12, 9999"
select dateadd(dd, 1, @a)
在你的情况下......
...
where p_generaldata.admissiontime < dateadd(dd, 1, P_MonVals.entertime)
答案 2 :(得分:0)
您想使用dateadd功能:
SELECT p_generaldata.admissiontime, *
FROM Patient.dbo.P_MonVals P_MonVals
INNER JOIN Patient.dbo.P_GeneralData P_GeneralData
ON P_MonVals.PatientID=P_GeneralData.PatientID
WHERE p_generaldata.admissiontime < DATEADD(dd, 1, P_MonVals.entertime)
ORDER BY p_generaldata.patientid ASC