我在酒店领域工作。我为每个酒店和每个房间创建了库存页面。
在数据库的数据结构中,我创建了开始日期和结束日期。在清点时,我们在两个日期之间传递记录。
SELECT `crs_room_type_detail`.*, `crs_room_type`.`room_type_name`
FROM (`crs_room_type_detail`)
JOIN `crs_room_type` ON `crs_room_type_detail`.`room_type_id` = `crs_room_type`.`room_type_id`
WHERE `crs_room_type_detail`.`hotel_id` = '4'
AND `crs_room_type_detail`.`sdate` >= '2016-09-21'
AND `crs_room_type_detail`.`edate` <= '2016-10-04'
GROUP BY `crs_room_type_detail`.`room_type_id`
这是获取结果的查询。
对于房间,我们有 sdate:2016-09-20 和 edate:2016-09-30 这个标准不起作用,假设我改变了 sdate
<= '2016-09-21' 和 edate
>= '2016-10-04' 它不会工作一些其他标准
最佳答案
尝试以下脚本:
SELECT `crs_room_type_detail`.*, `crs_room_type`.`room_type_name`, date
FROM (`crs_room_type_detail`)
JOIN `crs_room_type` ON `crs_room_type_detail`.`room_type_id` =
`crs_room_type`.`room_type_id`
WHERE `crs_room_type_detail`.`hotel_id` = '4'
AND date(`crs_room_type_detail`.`sdate`) >= date('2016-09-21')
AND date(`crs_room_type_detail`.`edate`) <= date('2016-10-04')
GROUP BY `crs_room_type_detail`.`room_type_id`
关于php - 两个字段中两个日期之间的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39607747/