在SQLite3中将字符串作为数字进行比较

时间:2010-11-17 12:26:36

标签: sql sqlite comparison coercion

我在SQLite中有以下查询:

SELECT * FROM t1 ORDER BY t1.field

其中t1.field是包含数字的文本列。是否可以强制SQLite将t1.field的值视为数字而不是字符串(不做ALTER TABLE)?现在排序是一个纯字符串,所以10在2之前。

谢谢。

1 个答案:

答案 0 :(得分:18)

好吧,找到了解决方案:

SELECT * FROM t1 ORDER BY t1.field + 0

+ 0部分似乎强制转换为数字