Sql 选择日期和时间框架
如何仅选择大于40天的日期Sql 选择日期和时间框架,sql,oracle,Sql,Oracle,如何仅选择大于40天的日期 SELECT name, gender, WardNo, StartOfOccupancy, EndOfOccupancy FROM Patient, Occupancy WHERE EndOfOccupancy > 40 StartOfOccupancy; 我想显示该人员在结束工作前工作超过40天的数据,我尝试了多种方法,但不知道如何构建最终线路并不断出现此错误: ORA-00932: inconsistent datatypes: ex
SELECT name, gender, WardNo, StartOfOccupancy, EndOfOccupancy
FROM Patient, Occupancy
WHERE EndOfOccupancy > 40 StartOfOccupancy;
我想显示该人员在结束工作前工作超过40天的数据,我尝试了多种方法,但不知道如何构建最终线路并不断出现此错误:
ORA-00932: inconsistent datatypes: expected DATE got NUMBER
谢谢你的帮助。试试看
SELECT name, gender, WardNo, StartOfOccupancy, EndOfOccupancy
FROM Patient, Occupancy
WHERE EndOfOccupancy > DATE_ADD(StartOfOccupancy, INTERVAL 40 DAY)
您需要检查边界情况,以查看是否得到了所需的结果。如果您使用的是Oracle日期数据类型,您可能希望比较TRUNC(EndOfOccupancy)和TRUNC(StartOfOccupancy),以消除时间组件
SELECT name, gender, WardNo, StartOfOccupancy, EndOfOccupancy
FROM Patient, Occupancy
WHERE TRUNC(EndOfOccupancy) - TRUNC(StartOfOccupancy) >= 40;