Как получить количество разрядов дробной части вещественного числа?

ZSergey
Дата: 30.05.2006 08:28:59
Всем привет!
такой вот сабж.
Если вопрос ламерский, то сильно не пинать...
Владимор Конев
Дата: 30.05.2006 08:37:55
--
-- Эмуляция таблицы с данными
with t 
  as (
        select 15 as float_num from dual union all
        select 15.1 as float_num from dual union all
        select 15.01 as float_num from dual union all
        select 15.001 as float_num from dual
     )
-- Конец эмуляции таблицы с данными
--
-- Непосредственно сам запрос:
select float_num,
       nvl(length(substr(float_num - trunc(float_num),2)),0) as scale
  from t

Query finished, retrieving results...
FLOAT_NUM  SCALE
---------  -----
       15      0 
     15,1      1 
    15,01      2 
   15,001      3 

4 row(s) retrieved
Elic
Дата: 30.05.2006 08:41:34
with t as (select round(asin(-1) * 2, 17) as x from dual)
select x, length(abs(x - trunc(x))) - 1 as precision from t
;

            X     PRECISION
------------- -------------
-3.1415926536            17
Владимор Конев
Дата: 30.05.2006 08:42:35
Elic
with t as (select round(asin(-1) * 2, 17) as x from dual)
select x, length(abs(x - trunc(x))) - 1 as precision from t
;

            X     PRECISION
------------- -------------
-3.1415926536            17
Ну да, про знак-то я и забыл... :)
Вячеслав Любомудров
Дата: 30.05.2006 08:42:37
До определенного предела
tst> select length(substr(12e-39, 2)), length(substr(12e-40, 2)) from dual;

LENGTH(SUBSTR(12E-39,2)) LENGTH(SUBSTR(12E-40,2))
------------------------ ------------------------
                      39                       39
Elic
Дата: 30.05.2006 08:47:42
Владимор Конев
Ну да, про знак-то я и забыл... :)
Не только :)
Владимор Конев
Дата: 30.05.2006 08:54:44
Elic
Владимор Конев
Ну да, про знак-то я и забыл... :)
Не только :)
Про что ещё? Раскрой глаза невидящему, дабы я впредь не наступал на ту же граблю...
ZSergey
Дата: 30.05.2006 09:02:34
Все понятно! Всем спасибо :)
Elic
Дата: 30.05.2006 09:07:46
Владимор Конев
Elic
Владимор Конев
Ну да, про знак-то я и забыл... :)
Не только :)
Про что ещё? Раскрой глаза невидящему, дабы я впредь не наступал на ту же граблю...
RTFM ... in SQL Functions (FAQ) :)
Владимор Конев
Дата: 30.05.2006 09:16:32
Elic
RTFM ... in SQL Functions (FAQ) :)
Видно туп я сегодня как валенок. Намека не понял :(