Joe Gavin shows how to use a function:
A common task while working with data in Microsoft SQL Server is converting from one data type to another. Most often, it’s done to change the way data is presented, but sometimes it is needed to make sure the right data types are being used for comparisons, joins, or sorting.
The SQL CONVERT function, which has long been part of the SQL language, and as the name implies, can be used to convert a value of one data type into a specified data type with optional formatting attributes. CONVERT gives you the ability to format, whereas the ISO Compliant CAST function does not.
My very strong recommendation for 99% or so of the audience: use TRY_CONVERT()
instead. TRY_CONVERT()
came out in SQL Server 2012 (sorry for the 1% stuck pre-2012) and has the same performance profile as CONVERT()
, except that, when conversion fails, TRY_CONVERT()
returns NULL rather than throwing an error.
There is also a TRY_CAST()
that does exactly what you think it would.