sql - 有什么简单的方法可以在T-SQL中格式化小数?

标签 sql tsql

我知道可以在非SQL环境中轻松完成[后数据处理,前端,您拥有什么],但是目前尚不可能。有没有办法采用decimal(5,2)并将其转换为varchar而没有尾随零/小数点?例如:

declare @number decimal(5,2)
set @number = 123.00
select cast(@number as varchar) as FormattedNumber

结果为“123.00”。是否有(简单)方式获取“123”的方法?同样,不是“123.30”而是“123.3”?可以通过找出百分之一/十分位数是否为0并手动修剪字符来做到这一点,但我想知道是否有更优雅的解决方案。

最佳答案

关于什么:

SELECT CAST(CAST(@number AS float) AS varchar(10))

但是,您可能需要首先使用原始数据进行仔细测试。

关于sql - 有什么简单的方法可以在T-SQL中格式化小数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2150507/

相关文章:

sql - 类型 'System.Data.SqlClient.SqlConnection'的错误值无法转换为 'String'

mysql - 被嵌套多表 MySQL 查询所困扰

sql - 如何计算 Firebase Analytics 原始数据中的 session 和 session 持续时间?

sql - 具有可变列名的动态更新语句

sql-server - SQL Server 存储过程返回表,每个用户的唯一性计数

sql - 给定时间间隔内的汇总函数

mysql - MySQL 中的最大值 (x,y)

sql - 根据日期比较多个SQL表数据

sql-server - 如何使用 TSQL 确定授予哪些角色对特定存储过程的执行权限?

sql - T-SQL 到 "Merge"两行,或 "Rekey"所有 FK 关系