i will try to after 4decimal point?
DECLARE@tblTABLE (val float)
INSERTINTO@tblSELECT12.19INSERTINTO@tblSELECT13.92INSERTINTO@tblSELECT14.47INSERTINTO@tblSELECT18.025INSERTINTO@tblSELECT18.3INSERTINTO@tblSELECT17.79INSERTINTO@tblSELECT18.13INSERTINTO@tblSELECT15.245INSERTINTO@tblSELECT12.485INSERTINTO@tblSELECT11.365INSERTINTO@tblSELECT18.26INSERTINTO@tblSELECT15.44INSERTINTO@tblSELECT19.13INSERTINTO@tblSELECT15.59INSERTINTO@tblSELECT28.695INSERTINTO@tblSELECT29.35INSERTINTO@tblSELECT15.27INSERTINTO@tblSELECT15.895INSERTINTO@tblSELECT26.51SELECT *,((abs(val)*10000) - CONVERT(INT,(abs(val)*10000))),cast(val*power(10,4) asint),val*power(10,4)
from@tbl

What I have tried:

But only one number most of confusion

SQL

SELECT ((abs(cast(18.26 as float))*10000) - CONVERT(INT,(abs(cast(18.26 as float))*10000)))

This is not a good question - we cannot work out from that little what you are trying to do. Remember that we can't see your screen, access your HDD, or read your mind - we only get exactly what you type to work with. So we have no idea what number you want to change, or what you are trying to change it to ... Use the "Improve question" widget to edit your question and provide better information.

I am not sure what you are trying to achieve. Are you trying to truncate numbers at 4 dec places or to display them with 4 dec places. Please tell us the expected output and the actual output.

I have tried your code in SQLServer and your 2nd col produces zeros for all values except for 18.26 which gives 2.91038304567337E-11 which is almost zero - this will be a rounding error. Float will always give inexact values as the binary value is only an approximation of the decimal value which is something you must be aware of when working with float values (in any language, not just SQL). All of the values will have rounding errors but some will be too small to display so they are shown as 0.

Remember that we can't see your screen, access your HDD, or read your mind - we only get exactly what you type to work with. So we have no idea what number you want to change, or what you are trying to change it to ...

Use the "Improve question" widget to edit your question and provide better information.

I have tried your code in SQLServer and your 2nd col produces zeros for all values except for 18.26 which gives 2.91038304567337E-11 which is almost zero - this will be a rounding error. Float will always give inexact values as the binary value is only an approximation of the decimal value which is something you must be aware of when working with float values (in any language, not just SQL). All of the values will have rounding errors but some will be too small to display so they are shown as 0.