如何将 YYYY-MM-DD HH:MM:SS 转换为 MM-DD-YYYY HH:MM:SS IN SQL 服务器?

How to convert YYYY-MM-DD HH:MM:SS TO MM-DD-YYYY HH:MM:SS IN SQL Server?

如何将 yyyy-mm-dd hh:mm:ss(24 小时格式)转换为 dd-mm-yyyy hh:mm:ss(24 小时格式?我正在使用 Sql 服务器 2008.

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

试试这个

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

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

这将适用于较旧的 SQL 服务器版本此外,如果它是 VARCHAR,则首先转换为日期时间,否则您可以跳过该转换。

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 作为日期和时间转换格式的参考

我建议不要直接在 SQL formate 中更改,而是您可以更改查询获取日期数据的 php 代码

例如,您可以将 $yourDate 对象分配给新的日期时间,并使用 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

如果您的数据 table 有一些其他日期格式相关的数据,这将防止可能发生一些错误错误,并且当您需要再次更改日期格式时它更有用

希望这会有所帮助