SQL中CONVERT函数详解

数据库 SQL Server
下文将为您介绍SQL中的CONVERT函数,CONVERT函数是SQL中用于数据转换的函数,如果您对此有兴趣,不妨一看,相信对您学习SQL有所帮助。

下文将为您介绍SQL中的CONVERT函数,CONVERT函数是SQL中用于数据转换的函数,如果您对此有兴趣,不妨一看,相信对您学习SQL有所帮助。

使用 CONVERT:

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

参数

expression

是任何有效的 Microsoft® SQL Server™ 表达式。

data_type

目标系统所提供的数据类型,包括 bigintsql_variant。不能使用用户定义的数据类型。

length

ncharnvarcharcharvarcharbinaryvarbinary 数据类型的可选参数。

style

日期格式样式,借以将 datetimesmalldatetime 数据转换为字符数据(ncharnvarcharcharvarcharncharnvarchar 数据类型);或者字符串格式样式,借以将 floatrealmoneysmallmoney 数据转换为字符数据(ncharnvarcharcharvarcharncharnvarchar 数据类型)。

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

在表中,左侧的两列表示将 datetimesmalldatetime 转换为字符数据的 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* 科威特 dd mon yyyy hh:mi:ss:mmmAM
- 131* 科威特 dd/mm/yy hh:mi:ss:mmmAM

*    默认值(style 0 或 100、9 或 109、13 或 113、20 或 120、21 或 121)始终返回世纪数位 (yyyy)。
** 当转换为 datetime 时输入;当转换为字符数据时输出。
*** 专门用于 XML。对于从 datetimesmalldatetimecharacter 数据的转换,输出格式如表中所示。对于从 floatmoneysmallmoneycharacter 数据的转换,输出等同于 style 2。对于从 realcharacter 数据的转换,输出等同于 style 1。

[[15287]]

重要  默认情况下,SQL Server 根据截止年份 2049 解释两位数字的年份。即,两位数字的年份 49 被解释为 2049,而两位数字的年份 50 被解释为 1950。许多客户端应用程序(例如那些基于 OLE 自动化对象的客户端应用程序)都使用 2030 作为截止年份。SQL Server 提供一个配置选项("两位数字的截止年份"),借以更改 SQL Server 所使用的截止年份并对日期进行一致性处理。然而最安全的办法是指定四位数字年份。

当从 smalldatetime 转换为字符数据时,包含秒或毫秒的样式将在这些位置上显示零。当从 datetimesmalldatetime 值进行转换时,可以通过使用适当的 charvarchar 数据类型长度来截断不需要的日期部分。

下表显示了从 floatreal 转换为字符数据时的 style 值。

输出
0(默认值) 最大为 6 位数。根据需要使用科学记数法。
1 始终为 8 位值。始终使用科学记数法。
2 始终为 16 位值。始终使用科学记数法。

在下表中,左列表示从 money smallmoney 转换为字符数据时的 style 值。

输出
0(默认值) 小数点左侧每三位数字之间不以逗号分隔,小数点右侧取两位数,例如 4235.98。
1 小数点左侧每三位数字之间以逗号分隔,小数点右侧取两位数,例如 3,510.92。
2 小数点左侧每三位数字之间不以逗号分隔,小数点右侧取四位数,例如 4235.9819。

返回类型

返回与 data type 0 相同的值。

 

【编辑推荐】

SQL Server中对应默认约束的删除方法

删除SQL约束的方法

SQL中用于删除记录的DELETE语句

教您如何彻底删除SQL Server注册表

SQL中游标的语法及应用

责任编辑:段燃 来源: 互联网
相关推荐

2010-09-24 19:02:40

SQL中CONVERT

2010-09-06 14:58:42

SQL函数

2010-09-09 11:12:49

SQL函数DATALENGTH

2009-02-23 13:41:42

XML操作函数SQL Server

2010-10-14 14:01:35

MySQL CONVE

2010-06-18 13:14:26

SQL Server

2010-09-09 10:21:13

SQL函数时间

2010-07-19 08:45:45

SQL Server

2010-09-16 09:15:59

SQL函数

2010-09-06 14:42:56

SQL函数

2010-09-10 15:51:51

SQL分析函数

2010-09-06 14:17:04

SQL函数

2010-08-05 09:07:24

2019-09-20 10:00:33

SQLMySQL数据

2021-04-09 10:37:40

SQL Server数据库排名

2024-10-17 16:08:36

SQL 查询SQL

2024-10-15 10:11:04

2010-09-07 11:53:00

SQL语句

2021-04-25 09:42:40

SQL递归SQL Server

2021-02-03 09:21:59

SQL机器学习ML
点赞
收藏

51CTO技术栈公众号