在sqlite中不能使用BETWEEN或两个以上的比较运算符

时间:2019-09-26 19:23:13

标签: sql sqlite

sqlite数据库中有一列称为引用的列,其值如001234567800000002和001234567800000019。

但是,当我执行查询“从表WHERE引用在001234567800000002 AND 001234567900000001之间的SELECT引用”时,什么也没有得到响应,当我应该获得这两个上述值时。

当我执行查询“ SELECT FROM FROM table WHERE reference> 001234567800000002 AND reference <001234567900000001”时,我什么也没得到。 但是,当执行查询“ SELECT FROM FROM table WHERE reference <001234567900000001”或只是“ SELECTSELECT FROM FROM table WHERE reference> 001234567800000002”时,我确实获得了这两个值,并获得了这两个值。

为什么我不能使用该范围内的这两个运算符查询? 该列中存储的值类似于“ 001234567800000002”,类型为TEXT。

感谢您的关注

2 个答案:

答案 0 :(得分:0)

只需将列的类型更改为bigint之类的数字类型

答案 1 :(得分:0)

该解决方案只是在BETWEEN中引用范围值,或者比我同时使用两个运算符时更大或更小。如果我只使用一个运算符,就认为它可以工作是很奇怪的,但是它可以工作。 @Michael Berkowski在答案中表示敬意