gpt4 book ai didi

sql - 选择BETWEEN列值

转载 作者:行者123 更新时间:2023-12-04 13:35:10 25 4
gpt4 key购买 nike

我正在尝试将BETWEEN与列名而不是直接值一起使用,如下所示:

SELECT * FROM table WHERE column1 BETWEEN column2 AND column3;

这将返回类似17行的内容,但是如果我这样写:
SELECT * FROM table WHERE (column1 <= column2 AND column1 >= column3) OR (column1 >= column2 AND column1 <= column3)

我得到约600行。
在这两种情况下,我只得到column1值实际上是中间值的行,但是第二种方法给我更多的结果,因此第一种方法有问题。

我怀疑问题可能出在使用带有列名而不是纯值的BETWEEN子句,并且SQL以某种方式将列名转换为实际值。它很奇怪,但是有人可以启发我吗?
谢谢

最佳答案

SELECT * FROM table WHERE column1 BETWEEN column2 AND column3; # gives 17 rows

与...相同
SELECT * FROM table WHERE (column1 >= column2 AND column1 <= column3) # gives 17 rows

由于您的附加检查
(column1 <= column2 AND column1 >= column3)

这是 OR ed,您将获得其他行。

关于sql - 选择BETWEEN列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3746840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com