下面是我的数据库架构。
id from to value
1 1 10 5
2 11 NULL 10 -- I have stored 'NULL' for any value GREATER THAN 11
现在我必须选择和之间的value
位置。input like (4)
from
to
我知道可以通过这个查询来实现。
SELECT *
FROM TABLE
WHERE 4 BETWEEN `from` AND `to`
但是如何选择价值input
呢15
?
SELECT *
FROM TABLE
WHERE 15 BETWEEN `from` AND `to`
在这种情况下,上面的查询将不起作用,因为to
列有null
.
更新
如果它可以有任何值,列to
将包含。null
现在如果输入值为15
,则查询应返回第二行,因为15 is not between 1 and 10 in 1st row
and15
大于 11 并且to
value 可以是大于 11 的任何值。