当前位置: 首页 > 面试题库 >

截断(不舍入)SQL Server中的小数位

南门新荣
2023-03-14
问题内容

我试图确定截断或删除SQL中多余的小数位而不舍入的最佳方法。例如:

declare @value decimal(18,2)

set @value = 123.456

这将自动舍@value入为123.46,这在大多数情况下是很好的。但是,对于这个项目,我不需要。有没有一种简单的方法可以截断我不需要的小数?我知道我可以使用该left()函数并将其转换回十进制。还有其他方法吗?


问题答案:
select round(123.456, 2, 1)


 类似资料:
  • 问题内容: 我有一系列的Java小数,例如: 我希望将所有小数点后5位保留下来。这怎么可能? 问题答案: 如果您想让事情变得简单快捷。;) 版画

  • 问题内容: 假设我的值为15.7784514,我想不进行四舍五入地显示为15.77。 结果是 - 如何显示15.77? 问题答案: 将数字转换为字符串,将数字匹配到小数点后第二位: 该方法在某些情况下(与)不同而失败,因此请务必小心。

  • 问题内容: 我试图将十进制数字截断到小数位。像这样: 所做的只是正确的事情,但是却舍入了价值。我不需要四舍五入的价值。希望这是可能的JavaScript。 问题答案: 更新 : 因此,无论如何,四舍五入的bug总是会困扰着您,无论您如何努力补偿它们。因此,应该通过精确地用十进制表示法来解决该问题。 旧的易出错的解决方案基于其他人的编译:

  • 在我的代码中进行一系列计算后,我有了一个,其值为 然后,我需要将这个乘以,我希望计算出的值为

  • 我正在使用BigDecimal在我的应用程序中处理正数,我想让它在第4个之后截断小数。我似乎几乎找到了我想要的RoundingMode。向下,但当BigDecimal是从双精度创建时存在一些问题。 例如: 但是,以下打印的是123.1110,这根本不是我想要的:

  • 问题内容: 这个问题已经在这里有了答案 : SQL中的TRUNCATE和DELETE有什么区别 (32个答案) TRUNCATE vs DELETE FROM的利弊 (11个答案) 6年前关闭。 关于mysql / sqlserver,我的脑海里发生了一件事,即 删除/截断 哪个更好更快? 在哪里使用删除? 在哪里使用截断? 问题答案: 删除 DELETE是DML命令。 使用行锁执行DELETE语