SQL中CONVERT转化函数的用法

原创 2007年10月12日 16:19:00
 
格式:
CONVERT(data_type,expression[,style])
说明:
此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)
相互转换的时候才用到.
例子:
SELECT CONVERT(varchar(30),getdate(),101) now
结果为:
now
---------------------------------------
|09/15/2001
===================================================================
style数字在转换时间时的含义如下:
------------------------------------------------------------------------------------------------------------
Style(2
位表示年份)    |   Style(4位表示年份)    |    输入输出格式                                    
------------------------------------------------------------------------------------------------------------
0                                | 100                            |    mon dd yyyy hh:miAM(
PM)              
------------------------------------------------------------------------------------------------------------
1                                |   101   
美国                 |    mm/dd/yy                                       
------------------------------------------------------------------------------------------------------------
2                                |   102     ANSI                |    yy-mm-dd                                        
------------------------------------------------------------------------------------------------------------
3                                |   103    
英法                 |    dd/mm/yy                                       
------------------------------------------------------------------------------------------------------------
4                                |   104    
德国                 |    dd.mm.yy                                        
------------------------------------------------------------------------------------------------------------
5                                |   105     意大利              |    dd-mm-yy                                        
------------------------------------------------------------------------------------------------------------
6                                |   106                             |    dd mon yy                                        
------------------------------------------------------------------------------------------------------------
7                                |   107                             |    mon dd,yy                                        
------------------------------------------------------------------------------------------------------------
8                                |   108                             |    hh:mm:ss                                         
------------------------------------------------------------------------------------------------------------
9                                |   109                             |    mon dd yyyy hh:mi:ss:mmmmAM(
PM)
------------------------------------------------------------------------------------------------------------
10                              |   110    
美国                  |    mm-dd-yy                                         
------------------------------------------------------------------------------------------------------------
11                              |   111    
日本                  |    yy/mm/dd                                        
------------------------------------------------------------------------------------------------------------
12                              |   112     ISO                   |    yymmdd                                           
------------------------------------------------------------------------------------------------------------
13                              |   113     
欧洲默认值      |    dd mon yyyy hh:mi:ss:mmm(24小时制)  
------------------------------------------------------------------------------------------------------------
14                              |   114                             |    hh:mi:ss:mmm(24
小时制)                    
------------------------------------------------------------------------------------------------------------
20                              |   120      ODBC 规范      |     yyyy-mm-dd hh:mi:ss(24小时制)         
------------------------------------------------------------------------------------------------------------
21                              |    121                            |     yyyy-mm-dd hh:mi:ss:mmm(24
小时制)
------------------------------------------------------------------------------------------------------------
语句及查询结果:

SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 1): 05/16/06
SELECT CONVERT(varchar(100), GETDATE(), 2): 06.05.16
SELECT CONVERT(varchar(100), GETDATE(), 3): 16/05/06
SELECT CONVERT(varchar(100), GETDATE(), 4): 16.05.06
SELECT CONVERT(varchar(100), GETDATE(), 5): 16-05-06
SELECT CONVERT(varchar(100), GETDATE(), 6): 16 05 06
SELECT CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
SELECT CONVERT(varchar(100), GETDATE(), 8): 10:57:46
SELECT CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
SELECT CONVERT(varchar(100), GETDATE(), 10): 05-16-06
SELECT CONVERT(varchar(100), GETDATE(), 11): 06/05/16
SELECT CONVERT(varchar(100), GETDATE(), 12): 060516
SELECT CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937
SELECT CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
SELECT CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47
SELECT CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157
SELECT CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM
SELECT CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
SELECT CONVERT(varchar(100), GETDATE(), 24): 10:57:47
SELECT CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250
SELECT CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 101): 05/16/2006
SELECT CONVERT(varchar(100), GETDATE(), 102): 2006.05.16
SELECT CONVERT(varchar(100), GETDATE(), 103): 16/05/2006
SELECT CONVERT(varchar(100), GETDATE(), 104): 16.05.2006
SELECT CONVERT(varchar(100), GETDATE(), 105): 16-05-2006
SELECT CONVERT(varchar(100), GETDATE(), 106): 16 05 2006
SELECT CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006
SELECT CONVERT(varchar(100), GETDATE(), 108): 10:57:49
SELECT CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM
SELECT CONVERT(varchar(100), GETDATE(), 110): 05-16-2006
SELECT CONVERT(varchar(100), GETDATE(), 111): 2006/05/16
SELECT CONVERT(varchar(100), GETDATE(), 112): 20060516
SELECT CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513
SELECT CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547
SELECT CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49
SELECT CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700
SELECT CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
SELECT CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM
SELECT CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM

说明:
使用
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
参数
expression
是任何有效的 Microsoft® SQL Server™ 表达式。。
data_type
目标系统所提供的数据类型,包括 bigint sql_variant。不能使用用户定义的数据类型。
length
ncharnvarcharcharvarcharbinary varbinary 数据类型的可选参数。
style
日期格式样式,借以将 datetime smalldatetime 数据转换为字符数据(ncharnvarcharcharvarcharnchar nvarchar 数据类型);或者字符串格式样式,借以将 floatrealmoney smallmoney 数据转换为字符数据(ncharnvarcharcharvarcharnchar nvarchar 数据类型)。
SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。
在表中,左侧的两列表示将 datetime smalldatetime 转换为字符数据的 style 值。给 style 值加 100,可获得包括世纪数位的四位年份 (yyyy)
不带世纪数位 (yy)
带世纪数位 (yyyy)

标准

输入/输出**
-
0 100 (*)
默认值
mon dd yyyy hh:miAM(或 PM
1
101
美国
mm/dd/yyyy
2
102
ANSI
yy.mm.dd
3
103
英国/法国
dd/mm/yy
4
104
德国
dd.mm.yy
5
105
意大利
dd-mm-yy
6
106
-
dd mon yy
7
107
-
mon dd, yy
8
108
-
hh:mm:ss
-
9 109 (*)
默认值 + 毫秒
mon dd yyyy hh:mi:ss:mmmAM(或 PM
10
110
美国
mm-dd-yy
11
111
日本
yy/mm/dd
12
112
ISO
yymmdd
-
13 113 (*)
欧洲默认值 + 毫秒
dd mon yyyy hh:mm:ss:mmm(24h)
14
114
-
hh:mi:ss:mmm(24h)
-
20 120 (*)
ODBC 规范
yyyy-mm-dd hh:mm:ss[.fff]
-
21 121 (*)
ODBC 规范(带毫秒)
yyyy-mm-dd hh:mm:ss[.fff]
-
126(***)
ISO8601
yyyy-mm-dd Thh:mm:ss.mmm(不含空格)
-
130*
Hijri****
dd mon yyyy hh:mi:ss:mmmAM
-
131*
Hijri****
dd/mm/yy hh:mi:ss:mmmAM
 
*     默认值(style 0 1009 10913 11320 12021 121)始终返回世纪数位 (yyyy)
**
当转换为 datetime时输入;当转换为字符数据时输出。
***
专门用于 XML。对于从 datetime smalldatetime character 数据的转换,输出格式如表中所示。对于从 floatmoney smallmoney character 数据的转换,输出等同于 style 2。对于从 real character 数据的转换,输出等同于 style 1
****Hijri
是具有几种变化形式的日历系统,Microsoft® SQL Server™ 2000 使用其中的科威特算法。
重要   默认情况下,SQL Server 根据截止年份 2049 解释两位数字的年份。即,两位数字的年份 49 被解释为 2049,而两位数字的年份 50 被解释为 1950。许多客户端应用程序(例如那些基于 OLE 自动化对象的客户端应用程序)都使用 2030 作为截止年份。SQL Server 提供一个配置选项("两位数字的截止年份"),借以更改 SQL Server 所使用的截止年份并对日期进行一致性处理。然而最安全的办法是指定四位数字年份。
当从 smalldatetime 转换为字符数据时,包含秒或毫秒的样式将在这些位置上显示零。当从 datetime smalldatetime 值进行转换时,可以通过使用适当的 char varchar 数据类型长度来截断不需要的日期部分。 

mysql类型转换函数convert与cast的用法

简单介绍下mysql数据库中用于类型转换的二个函数,convert与cast函数,有需要的朋友参考下。 首先,convert函数 字符集转换 :   CONVERT(xxx  USIN...
  • kouwoo
  • kouwoo
  • 2015年05月06日 14:45
  • 12087

hive中用到的函数总结

SQL SERVER中强制类型转换cast和convert的区别 在SQL SERVER中,cast和convert函数都可用于类型转换,其功能是相同的, 只是语法不同. cast一般更容易使用,c...
  • ljp812184246
  • ljp812184246
  • 2016年09月07日 18:11
  • 2563

Sql 中常用日期转换Convert(Datetime)

CONVERT(data_type,expression[,style])  convert(varchar(10),字段名,转换格式) 说明: 此样式一般在时间类型(datetime,sm...
  • baiduandxunlei
  • baiduandxunlei
  • 2013年06月26日 16:03
  • 122608

SQL中CONVERT转化函数的用法-数据库

CONVERT 函数 [数据类型转换] -------------------------------------------------------------------------------...
  • chao88552828
  • chao88552828
  • 2012年12月04日 16:59
  • 507

SQL中CONVERT转化函数的用法

本文转自:http://www.ninedns.com/shujuku/200742218541614980.html格式:CONVERT(data_type,expression[,style])说...
  • shengyongwang
  • shengyongwang
  • 2011年03月05日 11:42
  • 569

SQL中日期比对 - CONVERT转化函数的用法

格式:CONVERT(data_type,expression[,style])      Convert(varchar,字段名,格式类型)说明:此样式一般在时间类型(datetime,smalld...
  • limshirley
  • limshirley
  • 2017年04月17日 14:16
  • 133

SQL中CONVERT转化函数的用法

格式: CONVERT(data_type,expression[,style]) 说明: 此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nv...
  • Andrewniu
  • Andrewniu
  • 2017年12月01日 16:21
  • 34

SQL中CONVERT转化函数的用法

格式: CONVERT(data_type,expression[,style]) 说明: 此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nv...
  • limuzi13
  • limuzi13
  • 2014年09月09日 10:28
  • 353

SQL中CONVERT转化函数的用法

 转载自:http://www.cnblogs.com/xionglee/articles/1444916.html SQL中CONVERT转化函数的用法 格式: CONVER...
  • rising__star
  • rising__star
  • 2015年04月29日 16:34
  • 129

SQL中CONVERT转化函数的用法

格式: CONVERT(data_type,expression[,style]) 说明: 此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nv...
  • zheng963
  • zheng963
  • 2015年02月06日 15:59
  • 299
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL中CONVERT转化函数的用法
举报原因:
原因补充:

(最多只允许输入30个字)