I am writing this post to answer once of the question that I posted while back for TSQL Interview Question list
"If I run Select 100/11 what output will I get?"
When you divide Integer by an Integer in SQL Server, SQL Server returns Integer output.
"If I run Select 100/11 what output will I get?"
When you divide Integer by an Integer in SQL Server, SQL Server returns Integer output.
Fig 1: Divide Integer by Integer in SQL Server
As we can see from our above example, SQL Server output is Integer for Integers division. If we want to get float or Decimal output, Either our denominator or Numerator should be float or decimal type.
If we have both denominator or numerator as Integers, we can use convert or cast functions to convert one of them to float/decimal so we can get our results as float/decimal.
There are multiple techniques you can use to convert/cast to integer to float/decimal, here are some examples
SELECT CAST(100 AS FLOAT) /11 AS OutputResultSELECT 100/CAST(11 AS FLOAT) AS OutputResultSELECT 100/CAST(11 AS DECIMAL(12,0)) AS OutputResultSELECT CAST(100 AS DECIMAL(12,0))/11 AS OutputResult
Fig 2: Get Decimal output result from Integer division in SQL Server
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.