在 SQL Server 中将字符串转换为日期

     2023-03-29     283

关键词:

【中文标题】在 SQL Server 中将字符串转换为日期【英文标题】:Convert string into date in SQL Server 【发布时间】:2016-01-16 07:06:03 【问题描述】:

从字符串转换日期和/或时间时转换失败。

在 SQL Server 中运行此语句时出现上述错误:

SELECT CONVERT(datetime, 'Fri, 15 Jan 2016 17:30:05 GMT')

其实我想在Datetime列中插入相同的字符串格式

【问题讨论】:

预期结果是什么。是否要转换为当地时间 CONVERT 似乎不支持您当前时间戳的格式,因此我认为您需要对其进行处理才能使转换生效。 其实我想在日期时间列中插入相同的字符串格式 以易于处理的形式将数据呈现给 SQL Server:ISO 8601 format。 【参考方案1】:

正如 Tim Biegeleisen 所建议的,该字符串需要经过处理才能进行转换。为了转换它,您需要去掉当天 (Fri,) 和最后的 GMT 时区,例如:

DECLARE @date varchar(50) = 'Fri, 15 Jan 2016 17:30:05 GMT'
SELECT  CONVERT(DATETIME, SUBSTRING(@date, 5, LEN(@date) - 8), 113)

此解决方案确实会去除时区信息,如果您想将其转换回 UTC,请查看post。

【讨论】:

【参考方案2】:

如果要将字符串'Fri, 15 Jan 2016 17:30:05 GMT' 插入datetime 列,则需要在插入之前从字符串中删除Fri,GMT

SELECT CAST(substring(@str_date,5,len(@str_date)-8) as datetime)

DEMO

【讨论】:

在函数 SQL Server 中将字符串转换为日期时间

】在函数SQLServer中将字符串转换为日期时间【英文标题】:convertstringtodatetimeinfunctionSQLServer【发布时间】:2011-09-0918:54:24【问题描述】:我一直在SQLServer中编写用户定义函数:看起来像这样:CREATEFUNCTIONFormatDate(@fromtimenvarchar(50))R... 查看详情

在 MS SQL Server 中将字符串转换为日期时间

】在MSSQLServer中将字符串转换为日期时间【英文标题】:ConvertingastringtoadatetimeinMSSQLServer【发布时间】:2016-12-1415:56:10【问题描述】:选择CONVERT(datetime,\'12/16/200111:00:00PM\',???)通过查看https://msdn.microsoft.com/en-us/library/ms187928.aspx,我... 查看详情

在 PHP Laravel 中的 SQL Server 中将字符串转换为日期数据类型

】在PHPLaravel中的SQLServer中将字符串转换为日期数据类型【英文标题】:ConvertstringtodatedatatypeinSQLServerinPHPLaravel【发布时间】:2020-08-2020:24:09【问题描述】:我试图在特定日期范围内通过id获取产品,但我面临的问题是:日期为字... 查看详情

在 C# 中将十六进制值从 SQL Server 转换为日期时间

...用应该与它在SQLServer中的作用相同。我将十六进制值作为字符串“0000AC0500000000”或字节列表:["0","0","172","5","0 查看详情

在sql server中将日期时间转换为yyyymmddhhmmss

】在sqlserver中将日期时间转换为yyyymmddhhmmss【英文标题】:Convertdatetimetoyyyymmddhhmmssinsqlserver【发布时间】:2013-10-3015:15:55【问题描述】:我需要从yyyymmddhhmmss计算本地时间并将其返回为yyyymmddhhmmss。我已经尝试了以下方法,它正在... 查看详情

在 SQL Server 数据库中将长日期时间转换为实际日期时间的最佳方法是啥?

】在SQLServer数据库中将长日期时间转换为实际日期时间的最佳方法是啥?【英文标题】:WhatisthebestwaytoconvertalongdatetimeintoanactualdatetimeinaSQLServerdatabase?在SQLServer数据库中将长日期时间转换为实际日期时间的最佳方法是什么?【发... 查看详情

SQL Server 将字符串转换为日期时间

】SQLServer将字符串转换为日期时间【英文标题】:SQLServerconvertstringtodatetime【发布时间】:2010-11-1106:25:12【问题描述】:这不是询问如何在MSSQL中将任意字符串转换为日期时间,例如thisquestion。我可以控制字符串格式,但我想知... 查看详情

在 pyspark SQL 中将字符串日期转换为日期格式

】在pysparkSQL中将字符串日期转换为日期格式【英文标题】:ConvertstringdatetodateformatinpysparkSQL【发布时间】:2021-11-1615:51:30【问题描述】:我在表格中有一个日期列,它是字符串格式我需要把这个字符串日期转换成日期类型格式这... 查看详情

在 SQL Server 中将 varchar 转换为 datetime [重复]

】在SQLServer中将varchar转换为datetime[重复]【英文标题】:convertvarchartodatetimeinSQLServer[duplicate]【发布时间】:2013-03-2808:49:15【问题描述】:在varchar(dayname,monthdate,year)中设置日期,例如(1013年1月16日,星期三),我必须将其转换为日... 查看详情

在 SQL(Redshift)中将字符串(43677)转换为日期格式 [关闭]

】在SQL(Redshift)中将字符串(43677)转换为日期格式[关闭]【英文标题】:convertastring(43677)todateformatinSQL(Redshift)[closed]【发布时间】:2020-05-1019:34:41【问题描述】:如何在SQL(Redshift)中将字符串(43677)转换为日期?(我正在尝试转... 查看详情

如何在databricks sql中将字符串转换为日期

】如何在databrickssql中将字符串转换为日期【英文标题】:Howtoconvertstringtodateindatabrickssql【发布时间】:2021-03-0309:49:42【问题描述】:我有一个名为opens_dt的列,其中包含字符串格式的时间戳。+----------------------------+|opened_dt|+------... 查看详情

在 PHP 中将日期时间从 SQL 转换为字符串

】在PHP中将日期时间从SQL转换为字符串【英文标题】:ConvertingdatetimefromSQLtostringinPHP【发布时间】:2013-08-1901:02:30【问题描述】:我有一个SQL数据库表,其中包含一个包含日期时间格式数据的列。现在,在获得这一行的值之后,... 查看详情

如何在presto sql中将字符串'yyyy-mm-dd'转换为日期格式

】如何在prestosql中将字符串\\\'yyyy-mm-dd\\\'转换为日期格式【英文标题】:Howtoconvertstring\'yyyy-mm-dd\'todateformatinprestosql如何在prestosql中将字符串\'yyyy-mm-dd\'转换为日期格式【发布时间】:2020-10-1106:00:43【问题描述】:在prestoSQL中,日... 查看详情

在 Databricks SQL 中将字符串转换为日期格式时出现空结果

】在DatabricksSQL中将字符串转换为日期格式时出现空结果【英文标题】:NullresultwhenconvertingStringtoDateformatinDatabricksSQL【发布时间】:2020-01-3114:10:57【问题描述】:我有一个来自临时视图的字符串列,日期值是以“2020/01/01”的格式... 查看详情

SQL Server:在 case 语句中将 UniqueIdentifier 转换为字符串

】SQLServer:在case语句中将UniqueIdentifier转换为字符串【英文标题】:SQLServer:convertingUniqueIdentifiertostringinacasestatement【发布时间】:2011-09-1202:19:50【问题描述】:我们有一个日志表,其中有一个消息列,该列有时具有异常堆栈跟踪... 查看详情

在 Databricks SQL 中将字符串转换为日期返回 null

】在DatabricksSQL中将字符串转换为日期返回null【英文标题】:ConvertingStringtodateinDatabricksSQLreturnsnull【发布时间】:2021-06-1219:17:20【问题描述】:我有一个表,其中包含名为Date的字符串列,其中包含值(dd-Mon-yy格式化数据和yyyy-mm-d... 查看详情

在 SQL Server 中将空字符串转换为 INT

】在SQLServer中将空字符串转换为INT【英文标题】:CAST/CONVERTemptystringtoINTinSQLServer【发布时间】:2016-05-2708:21:33【问题描述】:我遇到了一个错误,我使用CAST(Col1ASINT)+CAST(Col2ASINT),其中Col1和Col2都是VARCHAR,当Col1或Col2为空白时,我... 查看详情

在 Impala 中将 YYYYMMDD 字符串转换为日期

】在Impala中将YYYYMMDD字符串转换为日期【英文标题】:ConvertYYYYMMDDStringtoDateinImpala【发布时间】:2015-10-0819:24:26【问题描述】:我在Impala中使用SQL来编写这个查询。我正在尝试将以YYYYMMDD格式存储的日期字符串转换为日期格式,以... 查看详情