收藏本站 
广告服务 
网站地图 
>> 本频道近100000余篇各类电脑技术、网络技术、软件技术、网页及平面设计等方面的电脑教程,我们的原则:不是精华拒不收录!
先飞电脑技术网技术文章数据库开发MS-SQL
网络编程 | 网站建设 | 网络技术 | 设计教程 | 软件教学 | 程序开发 | 数据库开发 | 教育认证 | 硬件维护 | 媒体动画 | 机械电子 |

数据类型的表达式转换为另一种数据类型

[ 作者:佚名    转贴自:网络转载    阅读次数:97    更新时间:2007-9-17 11:47:00   录入:刘光勇 ]         
    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 数据类型)。

SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。

在表中,左侧的两列表示将 datetime 或 smalldatetime 转换为字符数据的 style 值。给 style 值加 100,可获得包括世纪数位的四位年份 (yyyy)。

以上内容是到SQL帮助中复制下来的,但是要注意个情况,但CONVERT对日期进行转换时,注意style的用法,看以下有什么不同:

--字符转换为日期时,Style的使用

--1. Style=101时,表示日期字符串为:mm/dd/yyyy格式

SELECT CONVERT(datetime,'11/1/2003',101)

--结果:2003-11-01 00:00:00.000

--2. Style=101时,表示日期字符串为:dd/mm/yyyy格式

SELECT CONVERT(datetime,'11/1/2003',103)

--结果:2003-01-11 00:00:00.000

/*== 日期转换为字符串 ==*/

DECLARE @dt datetime

SET @dt='2003-1-11'

--1. Style=101时,表示将日期转换为:mm/dd/yyyy 格式

SELECT CONVERT(varchar,@dt,101)

--结果:01/11/2003

--2. Style=103时,表示将日期转换为:dd/mm/yyyy 格式

SELECT CONVERT(varchar,@dt,103)

--结果:11/01/2003

/*== 这是很多人经常犯的错误,对非日期型转换使用日期的style样式 ==*/

SELECT CONVERT(varchar,'2003-1-11' ,101)

--结果:2003-1-11

SELECT CONVERT(varchar,CAST('2003-1-11' AS DATETIME),101)

--结果:01/11/2003

文章首页【加入到收藏夹】告诉好友】【打印此文】【关闭窗口
  版权声明:本站提供的“数据类型的表达式转换为另一种数据类型”版权归文章所有者,转载请注明出处!
 ·上一篇文章:掌握数据库服务器使用文件的必要性      ·下一篇文章:解析Char类型与Varchar类型的区别
相关文章
·西部数据硬盘型号识别方法揭晓[16]
·C#也能动态生成Word文档并填充数据[60]
·OSPF协议路由器及链路状态数据包分类[72]
·数据类型的表达式转换为另一种数据类型[97]
·掌握数据库服务器使用文件的必要性[50]
网站主页 | 收藏本页 | 联系我们 | 广告服务 | 站点地图 | 会员注册 | 招聘信息 | 内容指正

联系QQ:先飞电脑技术网站事务联系QQ,点击可以直接留言. 32933427 电话:13710542091 [世界排名] 鄂ICP备05005890号 先飞电脑教程网