无法从 SQL Server 中的 CURRENT_TIMESTAMP 获取秒数

Posted

技术标签:

【中文标题】无法从 SQL Server 中的 CURRENT_TIMESTAMP 获取秒数【英文标题】:Can't get secs from CURRENT_TIMESTAMP in SQL server 【发布时间】:2013-09-10 06:56:01 【问题描述】:

当我尝试执行select CURRENT_TIMESTAMP 时,我会以表格形式得到2013-09-06 13:55:17.217。但是当我尝试做print CURRENT_TIMESTAMP 我得到Sep 6 2013 1:58PM 我没有得到秒。什么问题,我这里有没有做错什么?

【问题讨论】:

【参考方案1】:
SELECT convert(varchar, CURRENT_TIMESTAMP, 113)

SELECT FORMAT(CURRENT_TIMESTAMP, 'dd MMM yyyy HH:mm:ss')

查看here了解更多格式化选项

【讨论】:

【参考方案2】:

来自PRINT (Transact-SQL)

@local_variable

是任何有效字符数据类型的变量。 @local_variable 必须是 char、nchar、varchar 或 nvarchar,或者必须能够 隐式转换为那些数据类型

所以 thisa 就是 SQL Server 将值隐式转换为 VARCHAR/NVARCHAR 到 PRINT 的方式

看看CAST and CONVERT (Transact-SQL)使用默认转换类型来改变输出格式类型。

【讨论】:

以上是关于无法从 SQL Server 中的 CURRENT_TIMESTAMP 获取秒数的主要内容,如果未能解决你的问题,请参考以下文章

当current_value与使用它的表行不同步时,更新SQL Server中序列的current_value

sql server 中的 min 函数无法正常工作,给出 0

SQL Agent Job 报“Access to the remote server is denied because the current security context is

如何从 SQL Server 中的动态节点加载 OPENJSON

无法从 C# 中的客户端(控制台应用程序)从 WCF 服务(已通过 Windows 身份验证)访问 SQL Server

SQL Server 主表主键自增量,如何获取主键呢?