SQL Server日期时间与字符串之间的转换

这篇具有很好参考价值的文章主要介绍了SQL Server日期时间与字符串之间的转换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、日期转换为字符串、日期格式

1、使用函数CONVERT:

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

2、参数说明

expression :任何有效的SQL表达式。
data_type:目标数据类型。 这包括 xml、bigint 和sql_variant 。 不能使用别名数据类型。
length:指定目标数据类型长度的可选整数,适用于允许用户指定长度的数据类型。例如:nchar、nvarchar、char、varchar、binary 或 varbinary 默认值为 30。
style:日期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型);或者字符串格式样式,借以将 float、real、money 或 smallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型)。 对于 NULL 的样式值,则返回 NULL。 data_type 确定范围。

3、通常用到的字符串日期和时间样式

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

二、字符串转换为日期

1、使用 CAST:

CAST ( expression AS data_type )

例如:

Select cast('2009-01-01' as datetime)

2、使用 CONVERT:

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

三、Sql Server日期与时间函数

1、当前系统日期、时间:

select getdate()

2、dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值

语法:

DATEADD (datepart , number , date )

例如:向日期加上3天

select dateadd(day,3,'2000-10-15') --返回:2000-10-18 00:00:00.000

3、datediff 此函数返回指定的日期和时间startdate 和 enddate 之间所跨的指定 datepart 边界的计数(作为带符号整数值)

语法:

DATEDIFF ( datepart , startdate , enddate )

例如:

select datediff(day,'2004-09-01','2004-09-18') --返回:17

4、datepart 返回代表指定日期date的指定日期部分datepart的整数。

语法:

DATEPART ( datepart , date )

例如:

SELECT DATEPART(month, '2004-10-15') --返回 10

5、datename 返回代表指定日期date的指定日期部分datepart的字符串。

语法:

DATENAME ( datepart , date )

例如:

SELECT datename(weekday, '2004-10-15') --返回:星期五

6、day(), month(),year() --可以与datepart对照一下,也是返回指定日期date的相对应的整数。

语法:

YEAR ( date ),MONTH ( date ),DAY ( date )

例如:文章来源地址https://www.toymoban.com/news/detail-459378.html

SELECT YEAR('2010-04-30T01:01:01.1234567-07:00'); --返回2010

到了这里,关于SQL Server日期时间与字符串之间的转换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • spark SQL 怎么将一个时间戳字符串转换成hive支持的时间日期类型?

    在 Spark SQL 中,可以使用 to_timestamp 函数将一个时间戳字符串转换成 Hive 支持的时间日期类型。这个函数的语法如下: 其中,timestampStr 表示要转换的时间戳字符串,format 表示时间戳字符串的格式,格式必须与时间戳字符串的实际格式相匹配。如果不指定格式,Spark 会使用默认

    2024年02月11日
    浏览(36)
  • 52_Pandas处理日期和时间列(字符串转换、日期提取等)

    将解释如何操作表示 pandas.DataFrame 的日期和时间(日期和时间)的列。字符串与 datetime64[ns] 类型的相互转换,将日期和时间提取为数字的方法等。 以下内容进行说明。 如何将 datetime64[ns] 类型指定为索引并将其处理为时序数据以及如何使用,请参考以下文章。 26_Pandas.DataFr

    2024年01月22日
    浏览(33)
  • 前端中不同格式的日期相互转换(字符串、时间戳)js相关

    在项目中遇到了,需要实现字符串和Unix时间戳的相互转换,随手记录一下。 我使用的组件库为Naive UI,涉及到的组件为日期选择器(Date Picker)。作者在文档中写道: 实话说我不喜欢这个 feature,因为多数情况下,传递时间字符串不是个最佳实践。但是现实世界是复杂的,我

    2024年02月02日
    浏览(46)
  • Flink SQL 时区 -- 时间字符串转时间戳并转换时区

    将时间字符串格式化,转变成时间戳,再加8小时后写入clickhouse (该方法默认精确度为秒,不适用毫秒) (1)UNIX_TIMESTAMP 作用:将时间字符串转换成时间戳 用法:UNIX_TIMESTAMP(STRING datestr, STRING format) (2)CONVERT_TZ 作用:转换时区 用法:CONVERT_TZ(string1, string2, string3) (实测仅获

    2024年02月04日
    浏览(35)
  • pg使用sql将文本字符串转换成时间格式

    使用 PostgreSQL 数据库的 SQL 查询语句将文本字符串转换为时间格式,可以使用 to_timestamp 函数。 假设您的文本字符串时间格式为 “yyyy-MM-dd HH:mm:ss”,您可以使用以下 SQL 查询来转换: 这将返回一个时间戳类型的结果,其中包含从文本字符串转换而来的时间。 您可以在您的

    2024年02月12日
    浏览(53)
  • 在SQL中,可以使用不同的函数来转换字符串日期格式。以下是一些常用的函数:

    1. STR_TO_DATE(): 将字符串转换为日期格式。它接受两个参数:要转换的字符串和日期格式。 示例: 这将把字符串 ‘2023-07-04’ 转换为日期格式,并返回结果作为 converted_date。 2. CAST(): 将字符串转换为日期格式。它接受两个参数:要转换的字符串和目标数据类型。 示例: 这将把

    2024年02月04日
    浏览(46)
  • JS日期与字符串相互转换(时间格式化YYYY-MM-DD,Dayjs的使用)

    文章内容 文章链接 JS数组对象—— 根据日期进行排序 , 按照时间进行升序或降序排序 https://blog.csdn.net/XSL_HR/article/details/128579840?spm=1001.2014.3001.5501 JS日期时间格式化—— 数字日期转中文日期 (封装函数,dayjs转换时间格式) https://blog.csdn.net/XSL_HR/article/details/128607024?spm=100

    2024年01月18日
    浏览(45)
  • Python字符串与二进制字符串之间的转换

    字符串:可以包含任意字符 二进制字符串:转换结果的长度为8的倍数 涉及的内容: 字符串与bytes类型的互相转换 bytes类转与 list 列表的互相转换 bin函数的使用 int函数的使用 步骤: 将字符串转成bytes类型 将bytes类型转成list类型(元素为int型) 将list的每个元素转成二进制字

    2024年02月13日
    浏览(32)
  • Java中字符串与日期转换

    DateTime使用依赖 方法1: 方法2:

    2024年02月08日
    浏览(86)
  • java怎么把字符串转换成日期类型

    1、java怎么把字符串转换成日期类型 2、Java如何将指定字符串转化为指定日期格式 3、求JAVA高手解答!有关于字符串类型转换成日期型! 4、Java中怎么把字符串转换成日期格式啊 5、java中怎样将字符串转换成日期形式存入数据库 定义一个字符串类型的时间 java字符串转日期 ;创

    2024年02月06日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包