我在SQLite数据库中有一些包含FLOAT列类型的表,现在我想用Query检索值并将float字段格式化为2个小数位,到目前为止我已经写了像这样的查询:
SELECT ROUND(floatField,2) AD field FROM table
Run Code Online (Sandbox Code Playgroud)
这将返回如下结果集:
3.56
----
2.4
----
4.78
----
3
Run Code Online (Sandbox Code Playgroud)
我想格式化结果始终有两个小数位,所以:
3.56
----
2.40
----
4.78
----
3.00
Run Code Online (Sandbox Code Playgroud)
是否可以直接从SQL查询格式化2个小数位?如何在SQLite中完成?
谢谢.
小智 54
您可以使用printf:
SELECT printf("%.2f", floatField) AS field FROM table;
Run Code Online (Sandbox Code Playgroud)
例如:
sqlite> SELECT printf("%.2f", floatField) AS field FROM mytable;
3.56
2.40
4.78
3.00
sqlite>
Run Code Online (Sandbox Code Playgroud)
由于 sqlite 内部存储数字的方式,
你可能想要这样的东西
select case when substr(num,length(ROUND(floatField,2))-1,1) = "." then num || "0" else num end from table;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58534 次 |
| 最近记录: |