SQL日期语句优化问题(答对追加分数)

来源:百度知道 编辑:UC知道 时间:2024/07/06 15:10:32
1.是在本年之内的
2.开始时间在去年,结束时间在今年
3.开始时间在今年,结束时间在明年
4.开始时间在去年,结束时间在明年
5.开始时间在去年,结束时间在去年
6.开始时间在明年,结束时间在明年

现在有6种方案,需要判断开始时间和结束时间在什么区间,如果是2,3种方案怎样计算在今年发生的时间(也就是1-1日到结束时间,和开始时间到12-31日的相差天数)
不能使用临时表,不能使用变量……

这个问题和做月考勤判断他的请假有没有在这个开始日期和结束日期内是一样的。
你是想要怎么样?
1.是在本年之内的
2.开始时间在去年,结束时间在今年
3.开始时间在今年,结束时间在明年
4.开始时间在去年,结束时间在明年
5.开始时间在去年,结束时间在去年
6.开始时间在明年,结束时间在明年
列了这么多也没看明白你想说明什么,是想查有在今年内的所有记录?我看还少了个 开始时间在今年,结束时间在明年 吧?
只能Where 后面用Or了,把满足的条件加上去。画个时间轴表示一下就能知道哪些是在你想要查的范围之内了

今年
2,select * from table1 where extract(year from 结束时间)=2009
3,select * from table1 where extract(year from 开始时间)=2009

求1-1日到结束时间,和开始时间到12-31日的相差天数
日期可以直接相减