SQL 数字小数

标签 sql sql-server tsql

我运行一个查询,所有数字都精确到小数点后 5 位:

例如 -

156713.55000
2103613.03000
2080.08000

是否有一段简单的代码可以添加到我的代码中,以便“成本”表结果精确到小数点后两位?

最佳答案

以下示例将对您有所帮助。

四舍五入:

select ROUND(55.4567, 2, 0)
-- Returns 55.4600

select CAST(55.4567 as decimal(38, 2))
-- Returns 55.46

没有四舍五入:

select ROUND(55.4567, 2, 1)
-- Returns 55.4500

select CAST(ROUND(55.4567, 2, 1) as decimal(38, 2))
-- Returns 55.45

使用Str()函数。它需要三个参数(数字、要显示的总字符数和要显示的小数位数

  Select Str(12345.6789, 12, 3)

显示:“12345.679”(3 个空格、5 个数字 12345、一个小数点和三个小数位 (679)。- 如果必须截断,则会四舍五入

总共 12 个字符,小数点右边 3 位。

关于SQL 数字小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10635344/

相关文章:

mysql - 公司、产品、配件和协会的数据库设计

mysql - sql 通过从具有多行的表中选择查询插入到表中

php - 按每年唯一的月份分组,而不仅仅是月份

sql - 删除时如何在存储过程中使用2个表?

c# - 如何以编程方式检查(解析)SQL 语句的有效性?

php - 多个值插入mysql数据库表

sql-server - 将两个查询组合在一起形成月份计数

TSQL 用空字符串替换所有非 a-z/A-Z 字符

sql-server - 层次结构中子级别的总和

sql-server - sql :need to change constraint on rename table?