在SQL Server中转换日期时间

时间:2017-02-20 06:28:54

标签: sql sql-server sql-server-2008 sql-server-2012

在SQL Server中,日期将以以下格式保存: -

2017-02-20 05:59:58.537

但我需要以下格式输出:

20/Feb/2017 11:29:58 AM

6 个答案:

答案 0 :(得分:2)

试试这个

select  replace(convert(varchar(11),GETDATE(),113), ' ', '/')+ ' '+    RIGHT(CONVERT(varchar(20), GETDATE(), 22), 11);

答案 1 :(得分:0)

试试这个,

SELECT replace(convert(NVARCHAR, getdate(), 106), ' ', '/')+' '+right(getdate(),7)

答案 2 :(得分:0)

console.log("!!!!!!! Received request");
callback(null, {data: "Success"});
return;

答案 3 :(得分:0)

SQL按照默认设置存储日期(yyyy-mm-dd hh:mm:ss:ms)。在获取该日期时,您需要根据您的要求转换该日期。

Try this

答案 4 :(得分:0)

正确答案:

SELECT REPLACE(CONVERT(VARCHAR(11), getdate(), 113), ' ', '/') + ' ' + CONVERT(VARCHAR(20), CONVERT(TIME, getdate()), 22)

答案 5 :(得分:0)

我有一个我使用的日期功能,您可以修改它以包含小时,分钟和秒的详细信息。

CREATE FUNCTION [dbo].[fn_DateDisplay]
(
    -- Add the parameters for the function here
    @dateIn date
)
RETURNS nvarchar(MAX)
AS
BEGIN
    -- Declare the return variable here
    DECLARE @dateOut nvarchar(MAX)

    DECLARE @yearIn int
    DECLARE @monthIn int
    DECLARE @dayIn int

    DECLARE @monthOut nvarchar(3)

    -- Add the T-SQL statements to compute the return value here
    SET @yearIn = YEAR ( @dateIn ) 
    SET @monthIn = MONTH ( @dateIn ) 
    SET @dayIn = DAY ( @dateIn ) 

    SET @monthOut = SUBSTRING ( DATENAME ( MONTH , @dateIn ) , 1 , 3 )

    SET @dateOut = CONCAT ( @dayIn , ' ' , @monthOut , ' ' , @yearIn )

    -- Return the result of the function
    RETURN @dateOut

END