对于mysql的“between”运算符,前后值是否有必要按顺序排列?
喜欢:
BETWEEN -10 AND 10
BETWEEN 10 AND -10
这两个都有效还是只有第一个有效?
另外,我可以这样做吗:
WHERE thing<10 AND thing>-10
这行得通还是我必须在两者之间使用?
最后,我能做些什么:
WHERE -10<thing<10
?
最佳答案
BETWEEN -10 AND 10
这将匹配从 -10
到 10
的任何值,包括边界。
BETWEEN 10 AND -10
这永远不会匹配任何东西。
WHERE thing<10 AND thing>-10
这将匹配从 -10
到 10
的任何值,不包括边界。
此外,如果 thing
是一个不确定的表达式,它在 BETWEEN
的情况下被评估一次,在双重不等式的情况下被评估两次:
SELECT COUNT(*)
FROM million_records
WHERE RAND() BETWEEN 0.6 AND 0.8;
将返回一个大约 200,000
的值;
SELECT COUNT(*)
FROM million_records
WHERE RAND() >= 0.6 AND RAND() <= 0.8;
将返回一个大约 320,000
关于php - mysql之间的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6707294/