首页 > 解决方案 > SQL 查询仅选择 3 或 4 个小数点值

问题描述

有没有办法通过 SQL 查询或类似方法来查找超过 2 个小数点的值?就像是

SELECT * FROM TableName WHERE the decimels > 2

下面的示例图像突出显示 2 个值需要修复,但我不确定如何仅选择这些值。

在此处输入图像描述

我们只在屏幕上显示 2 位小数,因此超出的任何内容都不会四舍五入。当我们看到它们时,我们确实修复了它们,但数据库中有数千个值。能够轻松识别它们确实会有所帮助。

谢谢

标签: sql

解决方案


您可以使用以下方法计算小数floor(log10(reverse(abs(Price)+1)))+1

select * from TableName
where floor(log10(reverse(abs(Price)+1)))+1 > 2;

这是对您的数字的测试:SQL Fiddle
这里​​是十进制计数的参考


推荐阅读