在 SQL 服务器中将 DateTime 转换为所需格式
Convert DateTime into desired format in SQL Server
在我的项目中,我们正在从 Oracle 数据库迁移到 SQL 服务器。
在 Oracle 中,要获得所需的日期格式,我们将使用 to_char
函数 - 它将 return 我们在第二个参数中提到的所需格式:
TO_CHAR(TXNDT,'dd/MM/yyyy hh24:mi:ss')
在SQL服务器中,同样的事情可以像下面这样实现。
convert(varchar(255), TXNDT, 131)
我的问题是:我想获取日期格式dd-MM-yyyy hh24:mi:ss
我可以在 Oracle 中做到这一点:
TO_CHAR(TXNDT,'dd-MM-yyyy hh24:mi:ss')
但是我怎样才能在 SQL 服务器上实现同样的事情呢?
任何帮助将不胜感激!
CONVERT(Transact-SQL) 具有 CONVERT 的所有样式代码。另请注意,您需要转换为 varchar
,而不是 datetime
。 datetime固定显示格式为yyyy-MM-dd HH:mm:ss.sss.
所以,对你来说,就是 CONVERT(varchar(20),TXNDT,120)
。注意使用 varchar,而不是 datetime。
使用format()
。我认为这符合您的要求:
format(TXNDT,'dd-MM-yyyy HH:mm:ss')
如果你需要这个作为 varchar()
:
convert(varchar(255), format(TXNDT,'dd-MM-yyyy HH:mm:ss')
在我的项目中,我们正在从 Oracle 数据库迁移到 SQL 服务器。
在 Oracle 中,要获得所需的日期格式,我们将使用 to_char
函数 - 它将 return 我们在第二个参数中提到的所需格式:
TO_CHAR(TXNDT,'dd/MM/yyyy hh24:mi:ss')
在SQL服务器中,同样的事情可以像下面这样实现。
convert(varchar(255), TXNDT, 131)
我的问题是:我想获取日期格式dd-MM-yyyy hh24:mi:ss
我可以在 Oracle 中做到这一点:
TO_CHAR(TXNDT,'dd-MM-yyyy hh24:mi:ss')
但是我怎样才能在 SQL 服务器上实现同样的事情呢?
任何帮助将不胜感激!
CONVERT(Transact-SQL) 具有 CONVERT 的所有样式代码。另请注意,您需要转换为 varchar
,而不是 datetime
。 datetime固定显示格式为yyyy-MM-dd HH:mm:ss.sss.
所以,对你来说,就是 CONVERT(varchar(20),TXNDT,120)
。注意使用 varchar,而不是 datetime。
使用format()
。我认为这符合您的要求:
format(TXNDT,'dd-MM-yyyy HH:mm:ss')
如果你需要这个作为 varchar()
:
convert(varchar(255), format(TXNDT,'dd-MM-yyyy HH:mm:ss')