比较mysql中的两个日期

uyhoqukh  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(263)

酒店入住和退房时间为
表数据

check in                   check out                room name
2018-09-17 11:00:00           2018-09-19 11:00:00      room 1
2018-09-18 11:00:00           2018-09-19 11:00:00      room 2

注:标准入住和退房时间:上午11:00
如果我想约会 from 2018-09-17 11:00:00 to 2018-09-18 11:00:00 那么 output for that date total booked should be 1. 1号房间已经预订,2号房间应该是免费的。
我的问题

SELECT * FROM transcationmaster WHERE checkin >= STR_TO_DATE('2018-09-17 11:00:00', '%Y-%m-%d %H:%i:%s') and  checkout  <= STR_TO_DATE('2018-09-18 11:00:00', '%Y-%m-%d %H:%i:%s')

如何在mysql中做到这一点?
提前谢谢

mklgxw1f

mklgxw1f1#

这只是重叠范围的问题。要查找与您自己的日期范围重叠的记录,请尝试以下查询:

SELECT *
FROM transactionmaster
WHERE '2018-09-17 11:00:00' < checkout AND '2018-09-18 11:00:00' > checkin;

演示

相关问题