`
dazhi2010
  • 浏览: 106523 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

SQLserver日期格式问题(转)

阅读更多

sql server2000中使用convert来取得datetime数据类型样式(全)

日期数据格式的处理,两个示例:

CONVERT(varchar(16), 时间一, 20) 结果:2007-02-01 08:02/*时间一般为getdate()函数或数据表里的字段*/

CONVERT(varchar(10), 时间一, 23) 结果:2007-02-01 /*varchar(10)表示日期输出的格式,如果不够长会发生截取*/


语句及查询结果:
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:

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)。

不带世纪数位 (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 或 100、9 或 109、13 或 113、20 或 120、21 或 121)始终返回世纪数位 (yyyy)。
** 当转换为 datetime时输入;当转换为字符数据时输出。
*** 专门用于 XML。对于从 datetime或 smalldatetime 到 character 数据的转换,输出格式如表中所示。对于从 float、money 或 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 数据类型长度来截断不需要的日期部分。

 


当需要把字符串转化为日期时,可用同样的方式,反过来而已
Select CONVERT(varchar,CONVERT(datetime,'11 23 2011  5:04PM', 0), 20 )

分享到:
评论

相关推荐

    sql server日期格式转换方法大全

    本文将深入探讨SQL Server中多种日期格式转换的方法。 1. `CONVERT()` 函数 `CONVERT()` 函数是最常用的日期格式转换工具。它可以将日期转换为指定的样式。例如,将日期字段`myDate`转换为'YYYY-MM-DD'格式: ```...

    Sql Server日期格式转换

    ### Sql Server 日期格式转换详解 在日常使用Sql Server数据库的过程中,我们经常会遇到需要对日期进行格式转换的需求。本文将详细介绍几种常见的日期格式转换方法,并通过具体的示例代码来帮助大家更好地理解和...

    SQL SERVER日期格式转换大全.txt

    亲测正确、有效的格式转换方法,试用于常见的应用场景。适合熟悉oracle,但在用SQLServer的小伙伴。

    sqlServer 日期类型转字符串

    ### SQL Server日期类型与字符串转换 SQL Server提供了多种日期和时间数据类型,包括`date`、`datetime`、`datetime2`、`smalldatetime`等,用于存储和操作日期和时间数据。但在某些场景下,如报表生成、日志记录或...

    SQL server 日期格式

    ### 日期格式代码 在SQL Server中,`CONVERT()`函数可以接受第三个参数来指定日期和时间的显示格式。以下是一些常用的格式代码: - **100**:MMDDYYYY - **101**:MM/DD/YYYY - **102**:YYYY.MM.DD - **103**:DD...

    SQL Server日期格式大全

    用于SQL Server 数据库查询时的时间格式化语句

    SqlServer日期转换

    ### SqlServer 日期转换详解 在SQL Server中,日期时间数据类型的处理是非常常见的需求之一。尤其是在需要以不同的格式展示日期时,`CONVERT` 函数提供了极大的灵活性和便利性。本文将详细介绍`CONVERT`函数如何...

    SQL Server中日期问题的解决

    请注意,这种方法可能会导致日期格式不匹配的问题,因此在实际应用时需确保目标日期与数据库中的日期格式一致。 #### 方法三:使用LIKE操作符 如果你的日期格式是以特定分隔符(如`/`或`-`)分隔的,则可以使用`...

    sqlserver 日期格式总结

    ### SQL Server 日期格式详解 在SQL Server中处理日期数据时,经常需要用到不同的日期格式来满足业务需求或提高用户体验。本文将对SQL Server中的日期格式转换进行总结,并详细解释每种格式的特点及其应用场景。 #...

    SqlServer日期处理函数

    ### SqlServer 日期处理函数详解 #### 概述 SqlServer 提供了一系列强大的日期处理函数,这些函数可以帮助开发者和数据库管理员高效地操作日期和时间数据。本文档将详细介绍几个常用的日期处理函数及其应用场景,并...

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

    ### SQL Server 中强大的日期格式化函数:CONVERT 在SQL Server中处理日期和时间数据时,经常需要将日期和时间转换成不同的格式以便于展示或分析。`CONVERT` 函数是SQL Server中最常用的一种方法来实现日期和时间...

    sqlserver中对时间日期的操作

    例如,`CONVERT(varchar, GETDATE(), 101)`可以将当前时间转换为美国日期格式(MM/DD/YYYY),而`FORMAT(GETDATE(), 'yyyy-MM-dd')`则能提供更直观的年月日格式。 ### 四、日期计算 .NET中的`DateTime`类提供了...

    SQLServer日期时间格式转换.txt

    SQLServer 数据库语句:日期/时间格式转换语句示例。

    SQL SERVER 关于日期函数(字符转日期,日期转字符串)

    SQL Server 中提供了多种日期格式样式,可以根据需要选择合适的样式。例如,样式 0 代表 '05 16 2006 10:57AM',样式 1 代表 '05/16/06',样式 2 代表 '06.05.16',以此类推。 日期函数应用 日期函数在实际应用中...

    SQL SERVER 日期格式转换详解

    本文将深入探讨`CONVERT()`函数在SQL Server中的应用,特别是日期格式转换。 首先,`GETDATE()`函数是SQL Server获取当前系统时间的标准方法。它返回一个`datetime`类型的值,包含了日期和时间信息。例如: ```sql ...

    SQLSERVER 公历转农历

    SQLSERVER 实现公历转农历,可用于农历生日提醒!

    SQLServer日期时间函数

    本文将详细介绍几个常用的SQL Server日期时间函数,并通过示例来说明它们的具体用法。 #### 二、常用日期时间函数详解 ##### 1. DATENAME (datepart, date) - **功能**:此函数返回表示指定日期的指定日期部分的...

    SQL SERVER 日期格式化输出.txt

    ### SQL Server 日期格式化输出知识点详解 #### 一、概述 在SQL Server中,对日期进行格式化处理是一项常见的需求。例如,在报告生成、数据分析等场景中,我们需要将日期以特定格式展示出来,以便更好地理解和分析...

Global site tag (gtag.js) - Google Analytics