如何转换YYYY-MM-DD HH:MM:SS到MM-DD-YYYY HH:MM:SS在SQL Server中?

时间:2018-05-18 11:21:25

标签: sql sql-server sql-server-2008 datetime sql-server-2008-express

如何将yyyy-mm-dd hh:mm:ss(24小时格式)转换为dd-mm-yyyy hh:mm:ss(24小时格式?我使用的是Sql Server 2008. < / strong>

Given Date Format: 2017-12-18 18:16:49 - Its in DateTime format
Required Date Format: 18-12-2017 18:16:49

4 个答案:

答案 0 :(得分:0)

试试这个

SELECT FORMAT(CAST('2017-12-18 18:16:49' AS datetime) , 'dd-MM-yyyy HH:mm:ss')

答案 1 :(得分:0)

DECLARE @date DATETIME = '2017-12-18 18:16:49'

SELECT FORMAT(@date,'dd-MM-yyyy HH:mm:ss')

答案 2 :(得分:0)

这适用于较旧的SQL Server版本此外,如果它是 VARCHAR ,则首先转换为datetime,否则您可以跳过该转换。

SELECT convert(varchar,convert(datetime,'2017-12-18 18:16:49'),105) + ' ' + 
convert(varchar(8),convert(datetime,'2017-12-18 18:16:49'),14);

使用此Link作为参考日期&amp;时间转换格式

答案 3 :(得分:0)

我建议不要直接在SQL格式中进行更改,而是可以更改查询获取日期数据的PHP代码

例如,您可以将$ yourDate对象分配给新的dateTime,并使用formate函数来定义日期格式:

<?php
$yourDate = new DateTime();
$timestring = $yourDate->format('m-d-Y h:i:s');
echo $timestring;

输出将是:05-18-2018 05:00:34

您可以参考in this older discussion

如果您的数据表具有相对于其他日期格式的某种其他日期格式,则可以防止出现一些错误错误,并且一旦您需要再次更改日期格式,它就会更有用

希望这会有所帮助