Sql server SQL server将列从字符串转换为日期
我有一列存储为nvarchar50,其中包含格式为“yyyy/mm/dd”的日期,我想将其转换为日期,以便进行一些日期添加以进行进一步比较 到目前为止,我所看到的工作中没有什么是关于强制转换和转化的,并且总是会产生这样的结果: 味精242,第16级,第3状态,第1行 将varchar数据类型转换为datetime数据类型导致值超出范围 使用 表情 如果表达式是有效的日期、时间或日期时间值,则返回1; 否则,0Sql server SQL server将列从字符串转换为日期,sql-server,string,date,Sql Server,String,Date,我有一列存储为nvarchar50,其中包含格式为“yyyy/mm/dd”的日期,我想将其转换为日期,以便进行一些日期添加以进行进一步比较 到目前为止,我所看到的工作中没有什么是关于强制转换和转化的,并且总是会产生这样的结果: 味精242,第16级,第3状态,第1行 将varchar数据类型转换为datetime数据类型导致值超出范围 使用 表情 如果表达式是有效的日期、时间或日期时间值,则返回1; 否则,0 很可能您有无法正确转换的数据。您可以使用如下查询查看SQL server 2012及更
很可能您有无法正确转换的数据。您可以使用如下查询查看SQL server 2012及更高版本中的问题数据
declare @tableName table(stocked nvarchar(50));
insert into @tableName values
('2017/12/31'),('2017/11/11'),('2017/11/13'),('2017/13/11');
SET DATEFORMAT ymd;
select
stocked,
TRY_PARSE(stocked as datetime)
from @tableName
where TRY_PARSE(stocked as datetime) is NULL;
基本上,我在SQL server 2014中插入了一个excel表,在插入时没有将数据转换为日期,但我想在插入方式上的工作要比在以后转换它的工作轻松得多第一个数据库设计错误:我有一个列存储为nvarchar50,包含日期,将该列更改为datemysql或sql server?使用@DIe No sql server我想说明您的尝试,提供样本数据,如果没有任何一个,更不用说两个,我们可能无法帮助您。