sqlserver CAST 和 CONVERT函数

1.sqlserver CAST 和 CONVERT函数

将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。

语法

使用 CAST:

CAST ( expression AS data_type )

使用 CONVERT:

CONVERT (data_type[(length)], expression [, style])

参数

expression

是任何有效的 Microsoft SQL Server" 表达式。有关更多信息,请参见表达式。

data_type

目标系统所提供的数据类型,包括 bigint 和 sql_variant。不能使用用户定义的数据类型。有关可用的数据类型的更多信息,请参见数据类型。

length

nchar、nvarchar、char、varchar、binary 或 varbinary 数据类型的可选参数。

style

日期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型);或者字符串格式样式,借以将 float、real、money 或 smallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型)。

将某种数据类型的表达式显式转换为另一种数据类型。有关可用的数据类型的更多信息,请参见数据类型。日期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型);或者字符串格式样式,借以将 float、real、money 或 smallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar
或 nvarchar 数据类型)。当转换为字符数据时输出。

隐性转换对于用户是不可见的。

SQL Server 自动将数据从一种数据类型转换成另一种数据类型。例如,如果一个 smallint 变量和一个 int 变量相比较,这个 smallint 变量在比较前即被隐性转换成 int 变量。

显式转换使用 CAST 或 CONVERT 函数。

CAST 和 CONVERT 函数将数值从一个数据类型(局部变量、列或其它表达式)转换到另一个数据类型。例如,下面的 CAST 函数将数值 $157.27 转换成字符串 ‘‘$157.27‘‘:CAST ( $157.27 AS VARCHAR(10) )CAST 函数基于 SQL-92 标准并且优先于 CONVERT。

当从一个 SQL Server 对象的数据类型向另一个转换时,一些隐性和显式数据类型转换是不支持的。例如,nchar 数值根本就不能被转换成 image 数值。nchar 只能显式地转换成 binary,隐性地转换到 binary 是不支持的。nchar 可以显式地或者隐性地转换成 nvarchar。

当处理 sql_variant 数据类型时,SQL Server 支持将具有其它数据类型的对象隐性转换成 sql_variant 类型。然而,SQL Server 并不支持从 sql_variant 数据隐性地转换到其它数据类型的对象。

时间: 2024-12-17 22:47:09

sqlserver CAST 和 CONVERT函数的相关文章

MySQL CAST与CONVERT 函数的用法

MySQL 的CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值.两者具体的语法如下: view source print? 1 CAST(value as type); 2 CONVERT(value, type); 就是CAST(xxx AS 类型), CONVERT(xxx,类型). 可以转换的类型是有限制的.这个类型可以是以下值其中的一个:惠民县宿哲服装 二进制,同带binary前缀的效果 : BINARY 字符型,可带参数 : CHAR() 日期 : DA

sqlserver2008中cast和convert函数--类型转换

sqlserver2008中的cast和convert: 将某种数据类型的表达式显式转换为另一种数据类型. CAST 和 CONVERT 提供相似的功能. 语法: 使用 CAST:CAST ( data_to_be_converted  AS data_type ) 使用 CONVERT:CONVERT(data_type(length),data_to_be_converted,style) 实例:将int型转为varchar型,cast和convert都可以实现(decimal转varcha

MySQL之CAST与CONVERT 函数的用法

两者具体的语法如下:CAST(value as type); CONVERT(value, type); 可以转换的类型是有限制的.这个类型可以是以下值其中的一个: 二进制,同带binary前缀的效果 : BINARY 字符型,可带参数 : CHAR() 日期 : DATE 时间: TIME 日期时间型 : DATETIME 浮点数 : DECIMAL 整数 : SIGNED 无符号整数 : UNSIGNED

sql cast,convert,QUOTENAME,exec 函数学习记录

语法 使用 CAST: CAST ( expression AS data_type ) 使用 CONVERT: CONVERT (data_type[(length)], expression [, style]) 参数 expression 是任何有效的 Microsoft SQL Server" 表达式.有关更多信息,请参见表达式. data_type 目标系统所提供的数据类型,包括 bigint 和 sql_variant.不能使用用户定义的数据类型.有关可用的数据类型的更多信息,请参见

MySQL数据类型转换函数CAST与CONVERT的用法

MySQL 的CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值.两者具体的语法如下: 1.CAST(value as type) 就是CAST(xxx AS 类型) 2.CONVERT(value, type) 就是CONVERT(xxx,类型) 但是要特别注意,可以转换的数据类型是有限制的.这个类型可以是以下值其中的一个: 二进制,同带binary前缀的效果 : BINARY字符型,可带参数 : CHAR()日期 : DATE时间: TIME日期时间型 : DA

MYSQL VARCHAR排序 CAST ,CONVERT函数 类型转换

自己建表的时候,把一个字段类型创建为varchar(2) ,其实应该建为integer(2)的,但是今天在后台发现排序有问题,varchar排序有问题,所以该怎么解决呢? 示例表结构: 先来看一下,我的表结构 show create table cardserver \G *************************** 1. row *************************** Table: cardserver Create Table: CREATE TABLE `card

SqlServer存储过程中常用函数及操作

1.case语句 用于选择语句 SELECT ProductNumber, Category = CASE ProductLine WHEN 'R' THEN 'Road' WHEN 'M' THEN 'Mountain' WHEN 'T' THEN 'Touring' WHEN 'S' THEN 'Other sale items' ELSE 'Not for sale' END, Name FROM Production.Product ORDER BY ProductNumber; 用于u

转:sql cast和convert用法详解

原文:http://www.2cto.com/database/201310/250880.html sql cast和convert用法详解 总结: 以下这条仅仅适用于mysql SELECT {fn CONCAT(CONVERT(user_id,CHAR),USER_NAME)} AS str FROM t_sys_user 以下这条仅仅适用于sqlserver2008 SELECT {fn CONCAT(CONVERT(CHAR,user_id),USER_NAME)} AS str FR

SQL SERVER中强制类型转换cast和convert的区别

在SQL SERVER中,cast和convert函数都可用于类型转换,其功能是相同的, 只是语法不同. cast一般更容易使用,convert的优点是可以格式化日期和数值. 1 select CAST('123' as int) -- 123 2 select CONVERT(int, '123') -- 123 3 4 select CAST(123.4 as int) -- 123 5 select CONVERT(int, 123.4) -- 123 6 7 select CAST('1