Я бы хотел округлить десятичные числа до первого значащего ди git. Поскольку все они будут иметь различное количество ведущих нулевых десятичных знаков, я искал этот сайт и нашел следующее выражение.
TRUNC(EPSILON,LENGTH(REGEXP_SUBSTR(EPSILON,'.0*')))
Он работает для всех чисел, которые имеют менее 5 ведущих 0 десятичных знаков, и не вернуть правильный результат, если число имеет 5 или более десятичных разрядов.
Редактировать: Epsilon - это вычисляемое значение из запроса, тип данных значений, используемых в расчете: Число .
Примеры приведены ниже:
**EPSILON** **Expected Result** **Actual Result**
0.0000083333 0.000008 0
0.0000047666 0.000004 0
0.000025 0.00002 0.00002
0.000012195 0.00001 0.00001
0.00002 0.00002 0.00002
0.00036333334 0.0003 0.0003
Любая помощь будет принята с благодарностью! спасибо!