我想要的之间使用的列名,而不是直接的价值,这样的事情:选择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行.. 在这两种情况下,我只能得到行,其中列1值实际上是中间值,但第二个方法给了我更多的结果,所以第一个方法有什么不妥的地方。
我怀疑问题可能是使用BETWEEN子句与列名,而不是纯粹的值,并且不知何故SQL将列名转换为实际值..奇怪,但有人可以请我吗? 感谢
阅读我的问题2年后者。我甚至都无法理解我是如何期待查询工作的... – 2013-03-04 01:29:34