在SQL Server里面经常使用getdate()函数来获取当前时间,它精确到秒,比如查询:select getdate();得到的结果为:2016-06-24 11:36:01.120。但是大部分时候我们只需要知道日期,且是规定格式的日期。此时就需要用CONVERT()函数了。
1、CONVERT()函数的定义和用法:
CONVERT() 函数是把日期转换为新数据类型的通用函数。
CONVERT() 函数可以用不同的格式显示日期/时间数据。
2、CONVERT()函数的语法:
CONVERT(data_type(length),data_to_be_converted,style)
data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式。
3、CONVERT()函数第三个参数style的值:
Style ID |
标准 |
Style 格式 |
举例输出 CONVERT(VARCHAR(30),GETDATE(),id); |
100 / 0 |
Default |
mon dd yyyy hh:miAM (或者 PM) |
06 24 2016 11:43AM |
101/1 |
USA |
mm/dd/yy |
101:06/24/2016 1: 06/24/16 |
102/2 |
ANSI |
yy.mm.dd |
102:2016.06.24 2: 16.06.24 |
103/3 |
British/French |
dd/mm/yy |
103: 24/06/2016 3: 24/06/16 |
104/4 |
German |
dd.mm.yy |
104: 24.06.2016 4: 24.06.16 |
105/5 |
Italian |
dd-mm-yy |
105: 24-06-2016 5: 24-06-16 |
106/6 |
|
dd mon yy |
106: 24 06 2016 6: 24 06 16 |
107/7 |
|
Mon dd, yy |
107: 06 24, 2016 7: 06 24, 16 |
108/8 |
|
hh:mm:ss |
11:55:15 |
109/9 |
Default + milliseconds |
mon dd yyyy hh:mi:ss:mmmAM(或者 PM) |
06 24 2016 11:56:19:250AM |
110/10 |
USA |
mm-dd-yy |
110: 06-24-2016 10: 06-24-16 |
111/11 |
JAPAN |
yy/mm/dd |
111: 2016/06/24 11: 16/06/24 |
112/12 |
ISO |
yymmdd |
112: 20160624 12: 160624 |
113/13 |
Europe Default + milliseconds |
dd mon yyyy hh:mm:ss:mmm(24h) |
24 06 2016 12:01:02:610 |
114/14 |
|
hh:mi:ss:mmm(24h) |
12:01:46:353 |
120/20 |
|
yyyy-mm-dd hh:mi:ss(24h) |
2016-06-24 12:02:40 |
121/21 |
|
yyyy-mm-dd hh:mi:ss.mmm(24h) |
2016-06-24 12:03:34.793 |
126 |
|
yyyy-mm-ddThh:mm:ss.mmm(没有空格) |
126: 2016-06-24T12:04:33.930 |
130 |
|
dd mon yyyy hh:mi:ss:mmmAM |
19 ????? 1437 12:08:31:213PM |
131 |
|
dd/mm/yy hh:mi:ss:mmmAM |
19/09/1437 12:08:31:213PM |
4、补充:
a、几个特殊的:
select getdate():2016-06-24 12:21:08.623(convert函数中121的格式)
select convert(varchar(10),getdate()):06 24 2016(那种格式都不是,100/0的格式有小时和分钟)
b、当CONVERT()函数传入不存在的Style ID则会报错,比如查询“SELECT CONVERT(VARCHAR(30),GETDATE(),26)”就会报错:从 datetime 转换为字符串时,26 不是有效的样式号。
c、这里的varchar(30),指的是获取的字符段的个数(为了让所有的字符串都显示出来所以定义的比较大),比如原本是2016-06-24 12:03:34.793,为了只获取2016-06-24字段,算了下,一共10个字符,所以选择varchar(10),又比如为varchar(7),则为2016-06,又比如:varchar(4),则为2016了。
参考链接:
1、百度知道:SQL获取日期的所有格式:http://zhidao.baidu.com/link?url=-f3UwbhFjUct6VoRS1B8ASeeYIiQd4PZazJWwtjZbE9hyQ0sAu9Suw-WYwI0YUJZHls6L9_QnFphUvZjv9Up_K
2、W3School:SQL Server CONVERT() 函数:http://www.w3school.com.cn/sql/func_convert.asp
相关推荐
### SQL Server 日期格式化输出知识点详解 #### 一、概述 在SQL Server中,对日期进行格式化处理是一项常见的需求。例如,在报告生成、数据分析等场景中,我们需要将日期以特定格式展示出来,以便更好地理解和分析...
### SQL Server 中强大的日期格式化函数:CONVERT 在SQL Server中处理日期和时间数据时,经常需要将日期和时间转换成不同的格式以便于展示或分析。`CONVERT` 函数是SQL Server中最常用的一种方法来实现日期和时间...
`FORMAT()` 函数提供了更灵活的日期格式化选项,它允许使用.NET框架的`DateTimeFormatInfo`类中的格式字符串。例如: ```sql SELECT FORMAT(myDate, 'yyyy-MM-dd', 'en-US') AS 'CustomFormat' FROM myTable; `...
用于SQL Server 数据库查询时的时间格式化语句
### 日期格式代码 在SQL Server中,`CONVERT()`函数可以接受第三个参数来指定日期和时间的显示格式。以下是一些常用的格式代码: - **100**:MMDDYYYY - **101**:MM/DD/YYYY - **102**:YYYY.MM.DD - **103**:DD...
### 三、日期格式化 在.NET中,我们可以使用`DateTime.ToString()`方法结合不同的格式字符串来定制日期的显示格式,如`"f"`表示完整日期和时间,包括秒,而`"y"`则表示年份的两位数表示。在SQL Server中,虽然没有...
### SQL Server 日期格式详解 在SQL Server中处理日期数据时,经常需要用到不同的日期格式来满足业务需求或提高用户体验。本文将对SQL Server中的日期格式转换进行总结,并详细解释每种格式的特点及其应用场景。 #...
在 SQL Server 中,`CONVERT` 函数可以接受一个整数参数作为日期格式化的样式。以下是一些常见的样式及其对应的日期格式: 1. **样式 0**:`MMDDYYhhmmSS`(例如:`0516200610:57AM`) - 此格式显示月份、日期、...
通过这些函数,可以轻松实现日期的计算、格式化以及特定部分的提取等功能。熟练掌握这些函数的应用,能够帮助开发者更高效地管理和处理日期时间相关的数据。 以上就是关于 SqlServer 日期处理函数的相关介绍和应用...
为了帮助用户高效地管理这些数据类型,SQL Server提供了丰富的日期时间函数,使得开发人员能够轻松地执行诸如提取日期部分、计算日期间隔、格式化日期输出等操作。本文将详细介绍几个常用的SQL Server日期时间函数,...
### SqlServer 日期转换详解 在SQL Server中,日期时间数据类型的处理是非常常见的需求之一。尤其是在需要以不同的格式展示日期时,`CONVERT` 函数提供了极大的灵活性和便利性。本文将详细介绍`CONVERT`函数如何...
当你需要将日期字段以特定格式展示或者存储时,就需要进行日期格式化。本文主要介绍SQL Server中如何使用`CONVERT`函数以及相关转换代码来实现日期的格式化。 默认情况下,SQL Server的日期时间类型`datetime`显示...
### SQL 日期格式化函数大全 在SQL中,对日期进行格式化是非常常见的需求之一,尤其是在需要将日期数据展示给用户或与其他系统交互时。本文将详细介绍SQL Server中`CONVERT`函数的不同格式代码及其产生的效果,帮助...
特别是在使用SQL Server时,对于日期类型的字段(如`smalldatetime`)进行格式化显示是一项基本且重要的技能。本文将详细介绍如何在SQL Server中控制日期格式的显示方式,并通过具体示例来展示多种日期格式。 ### ...
GETDATE() 函数返回当前日期和时间,而 CONVERT 函数可以将日期和时间格式化输出。 GETDATE() 函数 GETDATE() 函数返回当前日期和时间,精确到毫秒级别。它可以在 SELECT 语句中使用,以获取当前日期和时间。 ...
本文将深入探讨`CONVERT()`函数在SQL Server中的应用,特别是日期格式转换。 首先,`GETDATE()`函数是SQL Server获取当前系统时间的标准方法。它返回一个`datetime`类型的值,包含了日期和时间信息。例如: ```sql ...
本篇文章将深入探讨SQL中的日期和数字格式化函数,帮助你更好地理解和运用这些功能强大的工具。 首先,我们来了解一下日期处理函数。在SQL中,有多种方法可以转换和格式化日期。例如: 1. `DATE_FORMAT()`(MySQL...
在SQL SERVER 2005中,日期时间操作包括日期的加减、比较和格式化。例如,可以使用`DATEADD`函数增加或减少日期时间值,`DATEDIFF`计算两个日期时间之间的差值,`GETDATE()`获取当前系统日期时间。此外,`DATEPART`...
本文将详细介绍SQL Server中的日期时间格式转换方法,并列举出多种格式化选项。 #### 使用`CONVERT`函数进行日期时间格式转换 `CONVERT`是SQL Server中用于日期时间格式转换的主要函数之一。它支持将日期时间类型...