使用以下投射查询将数字转换为我的应用程序中的文本。
从订单中选择CAST(Orderid as TEXT)
如果我运行这个我得到输出像 1234.0 1098.0
而不是这个,我需要得到像这样的结果 1234 1098
我尝试过以下查询。如果我使用以下查询,它将以数字格式而不是数据表中的字符串格式返回结果。
从订单中选择CAST(orderid为字符串)
如何通过查询实现这一目标?它也应该满足以下情况。
实际值
12345个
12345.234
12345.023
预期价值
12345个
12345.234
12345.023
将数字转换为文本时,请建议一种将结果作为字符串类型的方法 在Sqlite中。 提前致谢。
答案 0 :(得分:3)
您可以检查删除小数位是否会更改值:
SELECT CAST(CASE WHEN CAST(orderid AS INTEGER) = orderid
THEN CAST(orderid AS INTEGER)
ELSE orderid
END AS TEXT)
FROM orders;
答案 1 :(得分:2)
这可能有效:
SELECT CAST(orderid AS int) FROM orders