在sql中不包含

tnkciper  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(372)

我正在尝试从sql数据库中获取所有冲突的时间计划,类似于:

SELECT * FROM schedule WHERE x BETWEEN startTime AND endTime

其中x是时间戳中给定的任何时间。
问题在于这样一个事实:如果我说一个从下午1:00到下午2:00的时间表,然后我尝试使用x=2:00 pm和starttime=2:00 pm,那么我的语句执行就会得到一个返回。
是否有一个标志或类似的东西,允许非包容性的中间调用?

jmp7cifd

jmp7cifd1#

BETWEEN..AND.. 基本上是语法糖的组合 >= 以及 <= 运算符,具有相同的性能。
如果expr大于或等于min,expr小于或等于max,between返回1,否则返回0。这相当于表达式(min<=expr和expr<=max)
对于非包含范围检查,可以使用 > 以及 < 操作员:

SELECT * FROM schedule 
WHERE x > startTime AND 
      x < endTime

相关问题