我正在尝试将varchar
格式的dd/mm/yyyy
列中的日期转换为日期时间dd/mm/yyyy
格式,以便我可以对数据运行日期范围查询。< / p>
到目前为止,我有以下哪些无效
CONVERT(varchar, CAST(date_started AS datetime), 103)
我也试过
convert(date_started as datetime, 103)
我需要确保输出与我们在英国的dd/mm/yyyy
一样,而不是mm/dd/yyyy
格式
答案 0 :(得分:21)
我想你是在追求这个:
CONVERT(datetime, date_as_string, 103)
请注意,datetime
没有任何格式。你想一想它的演示。要以适当的格式获取datetime
的数据,您可以使用
CONVERT(varchar, date_as_datetime, 103)
答案 1 :(得分:0)
试试这段代码:
CONVERT(varchar(15), date_started, 103)
答案 2 :(得分:0)
我认为这种语法更准确:
SELECT CONVERT(CHAR(10), GETDATE(), 103)
我添加SELECT和GETDATE()以进行即时测试:)
答案 3 :(得分:0)
如果要返回格式mm / dd / yyyy,请使用101而不是103: CONVERT(VARCHAR(10),[MyDate],101)
答案 4 :(得分:0)
您可以这样做:
SELECT convert(datetime, convert(date, '27-09-2013', 103), 103)