php - 为什么我的 MySQL BETWEEN 运算符不起作用?

标签 php mysql

MySQL 表“flightSched”连接到时间,类似于下面的表:

flightNo    |day    |time   |arrivalTimeSec
=============================================
WERE112 |Tuesday    | 1:00  |1381186800
FGHG234 |Tuesday    |23:00  |1381266000
CGHF345 |Tuesday    |00:00  |1381183200

我有一个 mysql 查询,它选择两次之间的所有数据。这是查询:

$CurrentTimeMinus30min = date('H:i', strtotime('-30 minutes')); //Current Time minus 30minutes
$CurrentTimeMinus30min = strtotime($CurrentTimeMinus30min);     

$CurrentTimePlus4Hours = date('H:i', strtotime('+240 minutes')); //Current Time plus 4 hours
$CurrentTimePlus4Hours = strtotime($CurrentTimePlus4Hours);

$query = $mysqli->query("
    SELECT * FROM flightSched 
    WHERE day = '$currentDay' 
    AND arrivalTimeSec 
        BETWEEN '$CurrentTimeMinus30min' 
        AND '$CurrentTimePlus4Hours'
");

有人建议我对时间值使用 strtotime() 函数,以便能够在 BETWEEN MySQL 查询中使用它们。这似乎根本不起作用。

这个查询哪里出了问题?任何帮助将不胜感激。

最佳答案

今天我发现了与你相同的问题(我的关于坐标)。 我发现在某些情况下,BETWEEN 运算符只能这样使用

..... WHERE columname BETWEEN smallervalue AND biggervalue

之前,自从处理负数以来,我曾尝试在前面使用更大的值,但失败了。 您可能会发现时间戳存在同样的问题。

关于php - 为什么我的 MySQL BETWEEN 运算符不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19268020/

相关文章:

php - 仅打印部分值或特定字符

Java 连接到 MySql 数据库,NullPointerException

php - Mysql 获取不工作

PHP - 表中的位置

php - MySQL & PHP 当代码内存不足时,只有一行

mysql - 简单的 MySQL 查询没有按预期工作

php - 如何使用假定的 col 值订购 mysql varchar 字段?

php - mysql select匹配所有数组元素

php - 几个逻辑编程问题

php - PHP 中的字符串和 "binary"字符串有什么区别?