`

MS SQL Server中的 CONVERT 日期时间 格式化大全

阅读更多

原文来自: http://www.cnblogs.com/fernando/archive/2008/04/29/1176581.html

MS SQL Server中的 CONVERT 日期时间 格式化大全

CONVERT
将某种数据类型的表达式显式转换为另一种数据类型。由于某些需求经常用到取日期格式的不同.现以下可在SQL Server中 将日期格式化.

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。

 

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

 

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

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

 

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

 

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

 

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

 

使用 CONVERT:

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


select CONVERT(varchar, getdate(), 120 )
2004-09-12 11:06:08

select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),\'-\',\'\'),\' \',\'\'),\':\',\'\')
20040912110608

select CONVERT(varchar(12) , getdate(), 111 )
2004/09/12

select CONVERT(varchar(12) , getdate(), 112 )
20040912

select CONVERT(varchar(12) , getdate(), 102 )
2004.09.12

select CONVERT(varchar(12) , getdate(), 101 )
09/12/2004

select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004

select CONVERT(varchar(12) , getdate(), 104 )
12.09.2004

select CONVERT(varchar(12) , getdate(), 105 )
12-09-2004

select CONVERT(varchar(12) , getdate(), 106 )
12 09 2004

select CONVERT(varchar(12) , getdate(), 107 )
09 12, 2004

select CONVERT(varchar(12) , getdate(), 108 )
11:06:08

select CONVERT(varchar(12) , getdate(), 109 )
09 12 2004 1

select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004

select CONVERT(varchar(12) , getdate(), 113 )
12 09 2004 1

select CONVERT(varchar(12) , getdate(), 114 )
11:06:08.177

分享到:
评论

相关推荐

    Sql Server 中一个非常强大的日期格式化函数

    本文将详细介绍SQL Server中的一个强大日期格式化函数——`CONVERT()`函数,以及如何利用它来满足不同的日期时间格式需求。 ### `CONVERT()`函数详解 `CONVERT()`函数是SQL Server提供的用于转换数据类型的一种...

    SQLServer日期时间函数

    为了帮助用户高效地管理这些数据类型,SQL Server提供了丰富的日期时间函数,使得开发人员能够轻松地执行诸如提取日期部分、计算日期间隔、格式化日期输出等操作。本文将详细介绍几个常用的SQL Server日期时间函数,...

    SqlServer日期处理函数

    ### SqlServer 日期处理函数详解 ...熟练掌握这些函数的应用,能够帮助开发者更高效地管理和处理日期时间相关的数据。 以上就是关于 SqlServer 日期处理函数的相关介绍和应用实例。希望对你有所帮助!

    SQL格式化日期

    在Microsoft SQL Server数据库系统中,日期时间数据类型的处理和格式化是进行数据分析、报告生成以及时间序列预测等任务的关键步骤。本文将深入探讨SQL Server中日期格式化的主要方法,特别是通过`CONVERT`函数实现...

    Sqlserver 常用日期时间函数

    总之,SQL Server提供了丰富的日期时间函数,使得我们可以方便地对日期时间数据进行格式化、计算和操作。了解并熟练掌握这些函数,能极大地提高数据库查询和处理的效率。在处理日期时间数据时,应根据实际需求选择最...

    MS SQL 常用语法

    在实际应用中,`CONVERT()`函数不仅用于格式化输出,还常用于在查询中比较、筛选日期时间,或者在插入和更新数据时进行格式转换。例如,如果你需要从用户输入的字符串中解析日期,然后与数据库中的日期进行比较,`...

    sql 不同日期显示方式

    在SQL Server中,日期时间数据类型是非常常见的,而如何以不同的格式展示这些数据则是数据库开发与维护过程中一个重要的环节。本文将详细解析`CONVERT`函数的不同样式代码(style codes)所代表的日期显示格式,并...

    SQLSERVER 时间格式大全

    这些示例展示了SQL Server中处理日期时间的强大能力,熟练掌握这些技巧对于编写高效、准确的SQL查询至关重要。在实际工作中,可以根据需求灵活运用这些函数和表达式来满足各种时间格式的转换和计算需求。

    SQL SERVER 日期格式转换详解

    总之,`SQL Server`中的日期格式转换是一个灵活且重要的功能,通过`GETDATE()`获取当前时间,再结合`CONVERT()`函数的不同样式,可以轻松地将日期和时间数据转换为各种所需的格式。理解并熟练掌握这些技巧,对于提升...

    MS-SQL時間格式一覽

    在Microsoft SQL Server (MS SQL) 中,日期和时间数据类型的格式化是一项常用且重要的功能。通过使用`CONVERT`函数,可以将日期和时间值转换为不同的字符串格式,这对于报告、日志记录或数据展示等应用场景非常有用...

    MS SQL Server获取十二个月份的英文缩写

    除了`DATENAME()`,还有其他几个常用的日期和时间函数,如`DATEPART()`用于提取日期部分,`DATEADD()`用于添加或减去日期间隔,`DATEDIFF()`计算两个日期之间的差值,以及`CONVERT()`用于格式化日期和时间值。...

    与时间相关的SQL语句

    ### 与时间相关的SQL语句知识点详解 #### 1. 获取当前系统日期和时间 - **函数**: `GETDATE()` - **用途**: 返回当前系统的日期和时间。...这种格式化的输出非常适用于需要友好显示日期和时间的应用场景。

    sqlserver日期函数[参照].pdf

    6. **格式化日期**:`CONVERT(VARCHAR(10), GETDATE(), 120)`将日期转换为"yyyy-MM-dd"的格式。 其他有用的信息包括: 1. 日期可以作为数字处理,例如`MONTH(0)`,其中0被视为1900年1月1日。 2. `SET DATEFIRST {...

    sql 时间函数大全

    SQL 还提供了一些其他的时间函数,如 CONVERT 函数、FORMAT 函数等,这些函数可以用于格式化日期和时间、将日期和时间转换为字符串等。 参数 interval 的设定值 interval 可以设定为以下值: * Year (Yy yyyy):...

    取数据日期时间

    ### SQL Server 2000 中获取数据...综上所述,在 SQL Server 2000 中,通过使用诸如 `dateadd`, `CONVERT`, `DATEDIFF`, `DATEPART` 等函数可以灵活地处理日期时间数据,实现多种场景下的时间范围定义和数据统计需求。

    MS-SQL开发常用汇总和T-SQL技巧集锦

    1. **日期转换**:在SQL Server中,使用`CONVERT`函数可以将日期格式化。例如,`CONVERT(char(10),getdate(),120)`会将当前日期转换为"YYYY-MM-DD"格式。 2. **按姓氏笔画排序**:在中文环境中,如果你想按照姓名的...

    sql server 获取系统时间的方法

    总之,`GETDATE()`和`CONVERT`函数是SQL Server中获取和格式化当前系统时间的关键工具,它们在处理日期和时间数据时发挥着重要作用。无论是在查询中显示日期,还是在插入或更新日期字段时,都可以灵活运用这些函数来...

    通过存储过程获取编号,含年月日时分秒,14个字符,

    2. **格式化日期时间**: - 年份取4位(如2023); - 月份取2位(如01); - 日份取2位(如20); - 小时取2位(如09); - 分钟取2位(如30); - 秒份取2位(如59)。 3. **拼接字符串**:将上述6部分拼接...

Global site tag (gtag.js) - Google Analytics