在 SQL 函数中将 varchar 转换为 Datetime 时出错
Error converting varchar to Datetime in a SQL Function
我正在尝试创建一个函数,将给定的日期字符串转换为所需的 DateTime 格式。
代码是:
Alter function dbo.getDateValue1(@inputdate varchar)
returns varchar
as
begin
declare @inputDateTransformed datetime = CAST(@inputdate AS datetime2)
declare @setDatevalue varchar = convert(varchar,@inputDateTransformed ,112)
return @setDatevalue
end
我调用函数如下:
SELECT dbo.getDateValue1('2022-01-01 18:15:15.600' )
这给了我错误:
从字符串转换日期 and/or 时间时转换失败。
如有任何帮助,我们将不胜感激。
样本:
Create function [dbo].[getDateValue1](@input_date datetime2)
returns varchar(100)
begin
declare
@v_ret varchar(100)
set @v_ret = CONVERT(varchar, @input_date, 112)
return @v_ret
end
SELECT dbo.getDateValue1('2022-01-01 18:15:15.600')
-- Result:
20220101
我正在尝试创建一个函数,将给定的日期字符串转换为所需的 DateTime 格式。 代码是:
Alter function dbo.getDateValue1(@inputdate varchar)
returns varchar
as
begin
declare @inputDateTransformed datetime = CAST(@inputdate AS datetime2)
declare @setDatevalue varchar = convert(varchar,@inputDateTransformed ,112)
return @setDatevalue
end
我调用函数如下:
SELECT dbo.getDateValue1('2022-01-01 18:15:15.600' )
这给了我错误: 从字符串转换日期 and/or 时间时转换失败。
如有任何帮助,我们将不胜感激。
样本:
Create function [dbo].[getDateValue1](@input_date datetime2)
returns varchar(100)
begin
declare
@v_ret varchar(100)
set @v_ret = CONVERT(varchar, @input_date, 112)
return @v_ret
end
SELECT dbo.getDateValue1('2022-01-01 18:15:15.600')
-- Result:
20220101