Php 如何在mysql中使用exclusivebetween子句?
我有一个php变量。我想检查它是否位于mysql表任何一行的两列值之间。但我不希望将该变量与表的精确值匹配。i、 e,在条款之间的排他性。如果有人知道答案,请举例说明。非常感谢。这是我的密码Php 如何在mysql中使用exclusivebetween子句?,php,mysql,between,Php,Mysql,Between,我有一个php变量。我想检查它是否位于mysql表任何一行的两列值之间。但我不希望将该变量与表的精确值匹配。i、 e,在条款之间的排他性。如果有人知道答案,请举例说明。非常感谢。这是我的密码 $var = '15:00:00'; //Mysql Table (datatype of columns are TIME) first last row1 13:00:00 15:00:00 row2 17:00:00 1
$var = '15:00:00';
//Mysql Table (datatype of columns are TIME)
first last
row1 13:00:00 15:00:00
row2 17:00:00 19:00:00
您可以使用
between
子句执行此操作
SELECT `column1`,`column1`,`column1`
FROM table_name
WHERE $var > `first` AND $var < `second`
选择'column1','column1','column1'
从表\u名称
其中$var>`first`和$var<`second`
只有当值位于第一个和第二个的中间时,这样的操作才会起作用。您可以使用
between
子句
SELECT `column1`,`column1`,`column1`
FROM table_name
WHERE $var > `first` AND $var < `second`
选择'column1','column1','column1'
从表\u名称
其中$var>`first`和$var<`second`
只有当值位于第一个和第二个值的中间时,这种方法才会起作用。MySQL中没有“exclusivebetween”操作符
表达方式:
a BETWEEN b AND c
实际上只是简写,相当于:
( a >= b AND a <= c )
我个人认为,如果避免在之间使用,SQL更容易理解
有几个查询可以检查给定值是否与表中的一行或多行“匹配”。例如:
SELECT 1 AS `matched`
FROM mytable t
WHERE t.first < ?
AND t.last > ?
LIMIT 1
选择1作为“匹配”`
来自MyT表
t.first在哪里?
和t.last>?
限制1
如果有匹配的行,此查询将返回一行,如果没有匹配的行,则返回一个空集。MySQL中没有“exclusivebetween”操作符
表达方式:
a BETWEEN b AND c
实际上只是简写,相当于:
( a >= b AND a <= c )
我个人认为,如果避免在
之间使用,SQL更容易理解
有几个查询可以检查给定值是否与表中的一行或多行“匹配”。例如:
SELECT 1 AS `matched`
FROM mytable t
WHERE t.first < ?
AND t.last > ?
LIMIT 1
选择1作为“匹配”`
来自MyT表
t.first在哪里?
和t.last>?
限制1
如果有匹配的行,此查询将返回一行,如果没有匹配的行,则返回一个空集。实际上,您可以在查询中使用表达式
SELECT *
FROM `table_name`
where $var between `first` + INTERVAL 1 second AND `last` - INTERVAL 1 second
您可以选择所需的任何时间间隔。这甚至适用于准备好的语句。实际上,您可以在查询中使用表达式
SELECT *
FROM `table_name`
where $var between `first` + INTERVAL 1 second AND `last` - INTERVAL 1 second
您可以选择所需的任何时间间隔。这甚至适用于准备好的语句。为什么不能使用
?为什么不能使用
?