Link to home
Start Free TrialLog in
Avatar of oraram9
oraram9

asked on

decimal values (oracle /sql)

I have to retrive the values after the decimal point.the problem is the number of digits after the decimal point are not fixed.

for example

if Number is                        should get
--------------                       --------------

12.5463111111111           5463111111111
5.245377                         245377
7                                     0
11.09                               09
45                                    0


Thanks in advance
Ruth
Avatar of oraram9
oraram9

ASKER

an addition to the above question..
 it is okay if I can get the 5 digits after the decimal value

like

if Number is                        should get
--------------                       --------------

12.5463111111111           .54631
5.245377                         .24537
7                                     .0
11.09                               .09
45                                    .0


Thanks
number - trunc(number,0) should do it
Here is the solution:

select substring(cast(salary as varchar(30)),charindex('.', cast(salary as varchar(30))) , 6) from Emp

Emp is the name of table and salary is the numeric field in Emp table.

This will give u the 5 digits after decimal point.

Here I have assumed that the maximum width of "salary" field is 30.

for ORACLE the solution would be

select substr(salary, instr(salary, '.'), 5) from Emp


Regards
Harish
ASKER CERTIFIED SOLUTION
Avatar of Pierrick LOUBIER
Pierrick LOUBIER
Flag of France image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial