将字符串转换为日期时间
嘿家伙 我想从字符串转换日期时间,我有字符串,其中包含'GETDATE'现在我想转换相同的日期时间,在SQL Server中的字符串被定义为varchar(max)将字符串转换为日期时间
请回复我怎样才能将字符串的GETDATE()函数转换为datetieme。
问候 阿巴斯Electricwala
我猜你的意思是你有一个包含文本GetDate()
这样的字符串。
declare @S varchar(50)
set @S = 'getdate()'
而你想把它变成一个执行getdate()
的日期变量。
你可以这样做,因为你知道getdate()
的含义。
declare @S varchar(50)
set @S = 'getdate()'
declare @D datetime
set @D = (select
case @S when 'getdate()'
then getdate()
else null
end)
没有意义,这可能比你说的更多。
谢谢你,但有没有什么办法,我可以做到这一点没有这样的选择语句,我的意思是一种线型铸造。 – Abbas 2011-02-11 11:34:48
如果刚日期字符串,你可以做这样的:
SELECT CONVERT(DATETIME, '2009-02-25 15:31:17.888')
但是... GETDATE()返回一个日期时间值,而不是一个字符串值。只需将GETDATE()结果赋值给变量即可。
样品(可能是inacurate):
declare @mydate as datetime set @mydate = GETDATE()
实际上,我从存储过程调用它,存储过程只接受字符串值 – Abbas 2011-02-12 17:49:35
请问您更准确吗? – gbn 2011-02-11 10:23:58