Missing Decimal Places After Cast()-ing
Mar 13, 2008
Hello, The issue is to convert a number like 114270 to 114 + (270/320) = 114.84375. The decimal version is the desired result. In other words the last 3 digits of 114270 are in base 320.
Question: I cast my number as char() then use substring() to get the digits. Then I cast back to float and divide by 320. I get 0 when I do this and I'm not sure why.
Code follows:
declare @p float
set @p = (select top 1 P from [tablename] where Product = 'Z')
declare @pchar as char(6)
set @pchar = cast(@price as char(6))
declare @first3 as char(3)
declare @second3 as char(3)
set @first3 = cast(substring(@pchar, 1,3) as float(25))
set @second3 = cast(substring(@pchar, 4,6) as float(25))
select @pchar -- 114270
select @first3 -- 114
select @second3/320 -- 0
I have tried changing cast(substring(@pchar, 4,6) as float(25)) to
cast(substring(@pchar, 4,6) as decimal)
and I get the same result. Any suggestions or is there a better way altogether?
View 4 Replies
ADVERTISEMENT
May 11, 2005
All of my currency columns are only storing 2 decimal places when I insert into the database but when I pull out the data with a SELECT statement, I always get 4 decimal places instead of the 2 that were inserted.
For example:
Database Price SELECT statement Price
100.56 100.5600
I have tried to use the CAST and/or CONVERT commands but I cannot get the output to come out as 100.56. Has anyone had a similar problem?
Thanks
View 5 Replies
View Related
Apr 29, 2008
Hello.
My database stores the decimals in Spanish format; "," (comma) as decimal separator.
I need to convert decimal nvarchar values (with comma as decimal separator) as a decimal or int.
Any Case using CAST or CONVERT, For Decimal or Int gives me the following error:
Error converting data type varchar to numeric
Any knows how to resolve.
Or any knows any parameter or similar, to indicate to the Cast or Convert, that the decimal separator is a comma instead a dot.
View 5 Replies
View Related
May 31, 2007
Hi,
I am trying to get my string to 2 decimal places...
Here is the code:string sumSQL = "SELECT CONVERT (float,sum(callTime)/count(callTime)) as CAVG FROM leads where agent = '" + agent + "' and " + dates.Text;
SqlCommand sumCMD = new SqlCommand(sumSQL, conn2);
object null1 = sumCMD.ExecuteScalar();if (null1 != null)
{string avgS = sumCMD.ExecuteScalar().ToString();Response.Write(avgS + "<br>" + "</td></tr><tr>");
}
Any Help appreciated...
Doug
View 1 Replies
View Related
Nov 30, 2006
is there a way with a float datatype to choose the number of deicmal places to use
View 2 Replies
View Related
Mar 5, 2008
How do i get these decimal working?
select
cast(2/5 as decimal(5,2))
,2/5
,2*5
,cast(5/2 as decimal (4,2))
thank you
View 6 Replies
View Related
Jul 20, 2005
I have many columns of data. They are all using the money datatype. When Ienter a value into a column such as 32.00, it only shows up as 32. Whenoutputted to an ASP page using a query it also only displays 32. If thedata is 32.33, then the display is 32.33. How do I get it to display 32.00?Thanks!DarrenMCP
View 3 Replies
View Related
Apr 30, 2008
I am running the following query and getting result 150.76000 but I am desired 150.76. How can i get it.
SELECT ROUND(150.75600,2)
Results:
--150.76000
But I need the following result
150.76
View 2 Replies
View Related
Apr 3, 2007
Hello, I have a datatable with a column of decimal numbers 0 - 1. I want to move the decimal 2 places to the right to make the column a percent column. I don't know how to do that.
Thanks
Steve
View 2 Replies
View Related
Aug 12, 2000
Hello all...
I am new to SQL 7, and am having trouble with the money and smallmoney data-types. When I pull data from these columns, it has four decimal places, and I need only two (four is screwing the perl code up). What do I do now?
All help much appreciated!
View 2 Replies
View Related
Aug 24, 2005
In MS SQL Server 2000 T-SQL, how can I always display 2 decimal places?
e.g.
I wish to display
25 as 25.00
or
43.6789 as 43.68.
Any help would be greatly appeciated.
View 2 Replies
View Related
Jun 28, 2004
Hi,
The underlying table for my fact contains a Sale field whose data type is decimal.
In the cube editor, I have tried a few options (both for Data Type and Display format) but in my front-end I am still getting the results with 2 decimal places.
Can someone kindly help me how I can get the results in a rounded form so that the decimal places are not shown e.g. instead of seeing 12,345,678.98 I want the results rounded as 12,345,679.
If (and i really hope not) it boils down to using MDX in the front end then can u kindly guide me since I can only spell MDX at the moment :(
Many thanks in advance for your help.
View 4 Replies
View Related
Mar 21, 2007
Hi,
I'm running the following query against a SQL Server 2003 database to receive the results below:
SELECT PayPeriod AS [Pay Period], SUM(PayHours) AS [Pay Hours]
FROM EmployeePayHours
GROUP BY PayPeriod
Pay Period Pay Hours713 80
714 120
717 59.5
718 80
719 80
A colleague of mine, however, is running the same query against the same database (using a different machine) and gets the following results.
Pay Period Pay Hours
713 80
714 120
717 59.500000000000021
718 79.999999999999972
719 79.999999999999972
Is there a setting somewhere that needs to be changed? Thanks.
View 1 Replies
View Related
Nov 28, 2015
I am trying work out if certain columns in a database table have the "correct" data in them and work out the "percentage completeness" of the data...
So, I have been allocating a 1 if the data is complete and a 0 if it's not. Then adding up the results and dividing them by the number of results and multiplying them by 100 to get a percentage.
BUT - the answer always comes back as a whole number and I cannot work our why!
This is my sql:
SELECT Clients.ClientNumber_Legacy,
CASE WHEN Client_Details_Enhanced.ClientType_Code = 'NK' THEN 0 ELSE 1 END,
CASE WHEN Client_Details_Enhanced.Title_Code = 'NK' THEN 0 ELSE 1 END,
(CASE WHEN Client_Details_Enhanced.ClientType_Code = 'NK' THEN 0 ELSE 1 END) + (CASE WHEN Client_Details_Enhanced.Title_Code = 'NK' THEN 0 ELSE 1 END) as total,
[Code] ....
View 3 Replies
View Related
Feb 26, 2007
There's been several good posts on using the node description of a model as the end user description for a specific cluster. My model uses a number of continuous input columns defined as currency from a fact table in the source cube. After processing, the node description has elements that look like this:
-0.5799759795 <=Interest Expense <=0.8397462488 ,
Since the source data is currency, this makes the node description look a little strange. The data type in the model is set as double. The precision implied by the description is not what I want the model to consider. In the case above, the difference between the numbers listed is not significant.
It would be great to have a better node desciption that doesn't imply so much precision, but the bigger question is why does the cluster model turn currency types into doubles. Should I set the data type to long in the model so that cents are ignored? I know I should probably use discrete inputs, but I don't want to have to discretize the currency values in the cube since this would require me to set up fact dimensions for each currency column in the fact table.
View 1 Replies
View Related
Sep 6, 2007
Hello, is there a way to convert the value to just 2 decimal places, I created the report in Reporting Services and it has quite a few digits to each value. I looked at the table and found that the data type is {Float}. Is there a way to convert the values to just 2 decimal places?..Thank You.
View 4 Replies
View Related
May 25, 2007
Hi, i need to display my data in 2 decimal places but now i'm getting results after some calculation (for eg. 2.336224). How can i round it off to 2.34?
View 16 Replies
View Related
May 28, 2008
Dim subtot As Double
Dim tax As Double
Dim tot As Double
subtot = "0.00"
Dim sql As String
sql = "SELECT items.qty, products.descrip, products.price FROM items INNER JOIN products ON items.productid = products.id WHERE (items.orderid = " & Request.QueryString("oid") & ")"Dim objConn As New SqlConnection("Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|AllStar.mdf;Integrated Security=True;User Instance=True")
Dim cmdCustomers As New SqlCommand(sql, objConn)Dim dataReader As SqlDataReader
objConn.Open()
dataReader = cmdCustomers.ExecuteReader(CommandBehavior.CloseConnection)While dataReader.Read
subtot = subtot + (dataReader.GetValue(0) * dataReader.GetValue(2))
End While
tax = (subtot * 0.07)
tot = (subtot + tax)
Label1.Text = subtot
Label2.Text = tax
Label3.Text = tot
----------------------------------------
How to a convert the variable tax to just two decimals?
I tried label2.text = CType(tax, Double)
but that didn't work either
Thanks in advance
View 3 Replies
View Related
Mar 1, 2001
What is the best way to force a 2 digit decimal place without rounding?
For example select price*UOM returns
47.1294
3.255
.5
8
.49
What i want to be returned is
47.12
3.25
8.00
.50
.49
Thanks,
Jim
View 3 Replies
View Related
Mar 3, 2005
Hi. I have a query that returns several averages and percentages. Is there some way to set up the query so the results only go to 2 decimal places? Here is a sample of the query I am using:
Code:
$query = "SELECT COUNT(deal_id), SUM(vs), SUM(vs)/COUNT(deal_id)*100, AVG(fin) FROM sales GROUP BY salesperson";
It works great,except the results are several decimal places long, and I need it to be only 2.
Any help appreciated.
Cori
Never mind, I found it muhself....
FORMAT(AVG(fin),2) works perfectly!!
View 5 Replies
View Related
Oct 26, 2004
I have a table with a money field that had previously been running calculation and storing the data into the database's money field. Since this field supports 4 decimal places, it was storing 4 decimal places worth of data. I have since cleaned up my insert routine to round everything up to two decimal places and it only inserts the rounded values. I now have to go back and update the old data with the two decimal place rule. How would I go about doing this?
OLD---------------------------NEW
15.1456 ================ 15.15
4.1328 ================== 4.13
5.16 =================== 5.16
View 7 Replies
View Related
Jan 14, 2004
Hey - I have a quick question and know that it is probably pretty simple, but I am stumped. I have a query where I need to make a colum a number that looks like a percent with 2 significant digits:
i.e.,
SELECT tblNumericCovert.number1, tblNumericCovert.number2, [number1]/[number2] AS testDiv
FROM tblNumericCovert
where testDiv needs to spit out results like this ###.##
I am totally lost, if anyone can help, I would appreciate it.
View 5 Replies
View Related
Apr 1, 2004
SELECT 1/2 returns 0 in transact sql instead of 0.500000
How do I get it to return 0.5000 ?
View 7 Replies
View Related
Apr 2, 2015
I need to find the ones ending in a decimal. So if you look at the list below, I need a script that will return the value 001. ,002., 004. ..
001
001.
002.
003
004
004.
View 5 Replies
View Related
May 16, 2008
Hi All,
I have a small question to ask. How to round a numeric field upto 2 decimal places, and also show it with 2 decimal places only
For example the following would return 255.88000000000
select round(255.87908765444,2)
How to get 255.88 only?
Pleas help.
Thanks,
Zee
View 3 Replies
View Related
Sep 6, 2007
Hi
I have an SQL search that is converting two values to type money. I want it to show two digits after the decimal point but am getting inconsistent results. The first value is as follows:
tblInventoryItem.itemcost as originalcost (the column is datatype money)
This displays correctly i.e. 2000.00 or 150.70 etc
The second value is this:
tblInventoryItem.itemcost + tblUpgrades.ItemCost as totalcostincupgr (both columns are datatype money)
But this displays as 2000 or 150.7
How can I get the second value to show two decimal places even when the digits are zeros?
Thanks!
View 3 Replies
View Related
Nov 16, 2007
I have a field in a database which is a datatype Money. When I run a select query the data is coming back with 4 decimal places like 100.0000 but I only want 2 decimal places like 100.00.
Anyone know how to get this?
macca
View 12 Replies
View Related
Apr 11, 2007
Hi all,
I need to format a field to a set number of decimal places which is held as a field within the DB, and also format it as a standard number.
I have been able to set the format of the field to the decimal places field and it all works (the quantity in the row has the right number of decimal places), but i cant now format it as a number...
Heres an example:
The quantity is 1500 with 3 decimal places so it becomes 1500.000
I need to format it as a number with comma's etc such as 1,500.000
How would i go about doing this? Ive already used the format option for the decimal places and dont know how to add another format type (which in this case will be N)
Cheers
Rob.
View 3 Replies
View Related
Jun 29, 2004
I have a float of 70.83333333343
If I do this
SET @Output=ROUND(@Output, 2, 1) -- @Output is DECLARED as FLOAT
I get this:
70.82999999999999
I want:
70.83
How do I do that?
Thanks in advance...
View 2 Replies
View Related
Oct 17, 2001
I am working with an off the shelf app that controls decimal places through the application. All columns underlying the apps 'numeric' fields are floats. We are writing some scripts that need to compare numbers and some of them look like the second row
KELLYJ 2.1233
DONOVM 1.6000000000000001
OLSSON 15.3750
I have tried using round and cast. My examples work like the following:
SELECT 27.719999999
SELECT CAST(ROUND(27.719999999,4) AS DECIMAL(50,4))
When I try the same against a column to update the entire table it leaves the rows like above as longer to the right of the decimal point.
Any pointers on how to get these numbers back to 4 decimals places would be much appreciated
View 3 Replies
View Related
Dec 19, 2000
I have two fields - both defined as money.
When I divide them, SQL Server truncates the result after the 4th decimal point.
So SQL Server says: 370.45 / 3,391,517.85 = 0.0001
I want to achieve: 370.45 / 3,391,517.85 = 0.00010922837... etc.
The field the result is going into is defined as decimal(20,18)
I've tried using "cast(1stmoneyfield as decimal(20,18)) / cast(2ndmoneyfield as decimal(20,18)) as dividednumber", but SQL Server reports back errors about null values and Arithmetic overflow and terminates.
I'm at a loss as to how to solve the problem. Any suggestions please?
View 1 Replies
View Related
Aug 13, 2004
Hi,
This is strange....
I am getting my source data from another system am storing the SaleAmount of each product in a field the data type of which is [decimal](12, 2).
For some products I am getting an exact match (upto 2 decimal places) as compared with my source data BUT for some other products the value before the decimal places is correct but the 2 digits after the decimal place does not match with the source data :confused:
Even if this sounds stupid, can you please guide me. Am i missing some very basic and common sense thing?
Many TIA.
View 3 Replies
View Related
Dec 20, 2004
Hey,
I am filling a temp table with various float variables and I need to format one particular column to 2 decimal places.
Does anyone know the correct syntax to do this, and should it be done before filling the temp table or when I select what I needs from the temp table?
Thanks
View 3 Replies
View Related