在SQL Server中,如何将TransactionDateTime列拆分为两个单独的列Date和Time?

时间:2016-03-28 19:37:18

标签: sql-server

我有一个TransactionDateTime列,其中包含数据和时间信息,如下所示 - 2016-03-14 03:32:44.000。

我正在寻找SQL Server 2005中的Split函数,它将此列拆分为两个单独的列,一个用于“Date”,另一个用于“Time”,最终输出将如下所示.---- Date(2016 -03-14)和时间(03:32:44.000)

TransactionDateTime            Date              Time
2016-03-1403:32:44.000         2016-03-14        03:32:44.000

感谢。

2 个答案:

答案 0 :(得分:1)

Declare @dateTime datetime = getDate()
SELECT 
    @dateTime TransactionDateTime,
    CONVERT(VARCHAR(10),@dateTime,101) as [Date],
    CONVERT(VARCHAR(10),@dateTime,108) as [Time]

您可以相应地对日期/时间进行类型转换,因为输出是varchar。

答案 1 :(得分:-1)

这应该有用......

  

选择getdate(),convert(date,getdate()),convert(varchar(10),   getdate(),108)

替换" getdate()"使用您的TransactionDateTime。

诺尔