スタイル 121 を使用できますが、ミリ秒は 3 桁しか使用できません (つまり、yyyy-mm-dd hh:mi:ss.mmm(24h)
) 形式。
declare @abc varchar(100)='2011-09-26 16:36:57.810'
select convert(datetime,@abc,121)
したがって、次のように変換する前に、varchar フィールドを 23 文字に制限することで整理できます。
declare @abc varchar(100)='2011-09-26 16:36:57.810000'
select convert(datetime,convert(varchar(23),@abc),121)
または Left()
を使用します 最初の 23 文字を次のように取得する関数:
select convert(datetime,left(@abc,23),121)
日付を文字列として保存しないようにしてください。