sql语句类型转换
简介:
数据类型转换可以通过CAST()和CONVERT()函数来实现。⼤多数情况下,这两个函数是重叠的,它们反映了SQL语⾔的演化历史。这两个函数的功能相似,不过它们的语法不同。虽然并⾮所有类型的值都能转变为其他数据类型,但总的来说,任何可以转换的值都可以⽤简单的函数实现转换。
语法:
CAST ( expression AS data_type )
CONVERT (data_type[(length)], expression [, style])
⽤例:
A.检索书名当前销售额的第⼀位数字为3,通过将ytd_sales转换为char(20)实现。
USE pubs
GO
SELECT SUBSTRING(title, 1, 30) AS Title, ytd_sales
FROM titles
WHERE CAST(ytd_sales AS char(20)) LIKE '3%'
GO
USE pubs
GO
SELECT SUBSTRING(title, 1, 30) AS Title, ytd_sales
FROM titles
WHERE CONVERT(char(20), ytd_sales) LIKE '3%'
GO
B. 使⽤带有算术运算符的CAST
USE pubs
GO
SELECT CAST(ROUND(ytd_sales/price, 0) AS int) AS 'Copies'
FROM titles
GO
C. 使⽤CAST进⾏串联
USE pubs
GO
SELECT 'The price is ' + CAST(price AS varchar(12))
FROM titles
WHERE price > 10.00
GO
D.使⽤CAST获得更多易读⽂本
USE pubs
GOsql语句实现的四种功能
SELECT CAST(title AS char(50)), ytd_sales
FROM titles
WHERE type = 'trad_cook'
GO
E.使⽤带有LIKE⼦句的CAST
USE pubs
GO
SELECT title, ytd_sales
FROM titles
WHERE CAST(ytd_sales AS char(20)) LIKE '15%'
AND type = 'trad_cook'
GO
提⽰:
当从⼀个 SQL Server 对象的数据类型向另⼀个转换时,⼀些隐性和显式数据类型转换是不⽀持的。例如,nchar 数值根本就不能被转换成 image 数值。nchar 只能显式地转换成 binary,隐性地转换到 binary 是不⽀持的。nchar 可以显式地或者隐性地转换
成 nvarchar。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论