Collections:
CONVERT/CAST Function in SQL Server Transact-SQL
How to convert value from one data type to another in SQL Server Transact-SQL? How to use the CONVERT function or the CAST function?
✍: FYIcenter.com
In Transact-SQL, you can use CONVERT statements to convert values
from one data type to another, in the syntax of:
CONVERT(data_type, value[, style])
In this syntax, "data_type" specifies the data type of the output value, "value" specifies the input value, and "style" specifies the conversion style. If "style" is not provided, the default style will be used.
The CAST function does the same job as the CONVERT function using the default style using a different syntax:
CAST(value AS data_type)
CONVERT and CAST functions are considered as explicit data type conversion, which gives you more power than the implicit conversion in two aspects:
Here are some examples on how to convert values to different data types:
DECLARE @dt DATETIME, @rn NUMERIC(9,2);
-- Implicit conversion from NUMERIC to DATETIME
SET @dt = 0.25;
-- Implicit conversion from DATETIME to CHAR
PRINT @dt;
-------------------
Jan 1 1900 6:00AM
-- Explicit conversion from DATETIME to CHAR with default style
PRINT CAST(@dt AS CHAR);
-------------------
Jan 1 1900 6:00AM
-- Explicit conversion from DATETIME to CHAR with ISO style
PRINT CONVERT(CHAR, @dt, 126);
-------------------
1900-01-01T06:00:00
-- Explicit conversion from DATETIME to NUMERIC
SET @rn = CONVERT(NUMERIC(9,2), @dt);
PRINT @rn;
----
0.25
-- Implicit conversion from DATETIME to NUMERIC, not supported
SET @rn = @dt;
PRINT @rn;
-----------------------------------
Msg 257, Level 16, State 3, Line 21
Implicit conversion from data type datetime to numeric is not allowed.
Use the CONVERT function to run this query.
⇒ Numeric Expressions and Functions in SQL Server Transact-SQL
⇐ PRINT Statements in SQL Server Transact-SQL
2017-04-01, 2743🔥, 0💬
Popular Posts:
How to continue to the next iteration of a WHILE loop in SQL Server Transact-SQL? How to use CONTINU...
How To Look at the Current SQL*Plus System Settings in Oracle? If you want to see the current values...
How To Break Query Output into Pages in MySQL? If you have a query that returns hundreds of rows, an...
How To Connect ASP Pages to Oracle Servers in Oracle? If you are running Windows IIS Web server and ...
How to download and install the scaled-down database AdventureWorksLT in SQL Server? If you want to ...