当前位置: 代码迷 >> Sql Server >> 时间区间查询,该如何处理
  详细解决方案

时间区间查询,该如何处理

热度:49   发布时间:2016-04-27 13:02:47.0
时间区间查询
表TB 字段如下:
计划ID
计划名
计划开始时间
计划结束时间

问题:
计划开始时间 时间A ~ 时间B
计划结束时间 时间C ~ 时间D

我想查询计划开始时时间 大于时间A 小于时间B 
但是存在以下情况:
①输入时间A 不输入时间B
②输入时间B 不输入时间A
③输入时间A 输入时间B
④时间A、时间B都不输入
计划结束时间类似以上情况
请问这样子的查询条件如何写


------解决方案--------------------
where语句改一下
SQL code
WHERE     LEFT(JO011,10) >= CASE WHEN @in_jhks1 IS NULL THEN LEFT(JO011,10)                            ELSE @in_jhks1 ENDAND    LEFT(JO012,10) <= CASE WHEN @in_jhks2 IS NULL THEN LEFT(JO012,10)                           ELSE @in_jhks2 ENDEND
  相关解决方案