sql - 将字符串与 SQLite3 中的数字进行比较

标签 sql sqlite comparison coercion

我在 SQLite 中有以下查询:

SELECT * FROM t1 ORDER BY t1.field

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

谢谢。

最佳答案

好吧,找到了解决方案:

SELECT * FROM t1 ORDER BY t1.field + 0

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

关于sql - 将字符串与 SQLite3 中的数字进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4204319/

相关文章:

java - 我需要帮助将图像存储在内部目录中,并且其路径已插入SQLite中

Android LogCat sqlite语法错误含义

ios - NSDate 比较显示错误的值?

php - 更新查询两个表

SQLite - UPSERT *不是* INSERT 或 REPLACE

mysql - MySQL如何进行浮点加法的数学计算?

去结构比较

java - 我将如何迭代自定义对象列表,比较列表中的情侣并根据特定条件删除?

sql - 如何在 Sybase ASE 上获取用户定义的数据类型列表?

php - sql中从另一个表的数据中选择3个用户的最佳方法是什么?