MySQL 比较开始和结束时间

标签 mysql sql

我正在尝试创建预订系统,MySQL 表有这一行

Room Id   |   Start (DateTime) |  |  Finish(DateTime)
13            2014-10-20 08:30    |  2014-10-20 18:30

我想阻止这些开始和结束之间的任何条目

eg:
Room id: 13
Start: 2014-10-20 10:30
Finish: 2014-10-20 12:30

为此,我编写了此 MySQL 查询,此 SQL 正确吗?

SELECT * 
FROM rooms
WHERE room_id='13' 
AND ('2014-10-20 12:30:00' <= start_time OR '2014-10-20 10:30:00'>=finish_time) 

在这里我尝试在结果之间跳过,请告诉我。

最佳答案

您想要在开始时间和结束时间之间意味着我没有测试它,但您可以尝试一次......我希望它有效

SELECT * 
FROM rooms
WHERE room_id='13' 
AND ('2014-10-20 12:30:00' >= start_time AND '2014-10-20 10:30:00'<=finish_time) 

关于MySQL 比较开始和结束时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26585784/

相关文章:

sql - 此类代码中的“从中选择0”是什么?

mysql - 查询表名附加日期

mysql - 如何在MYSQL中添加同一列的两个外键

php - Joomla - 在哪里编辑插入 SQL?

php - 在列表中查找列表

c# - ASP.NET MVC 将语句插入数据库错误 : Column name or number of supplied values does not match table definition

sql - 连接 MYSQL 表并按两个字段排序?

sql - Oracle SQL - 将 oracle sql 中的 ids 更新为按顺序排列

mysql - SQL - 计入多列

php - 发送到 mysql 的表单上的链接和样式损坏,是因为 mysql_real_escape_string 吗?