Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何从SQL Server中提取日期时间字符串?_Sql Server_Datetime - Fatal编程技术网

Sql server 如何从SQL Server中提取日期时间字符串?

Sql server 如何从SQL Server中提取日期时间字符串?,sql-server,datetime,Sql Server,Datetime,我想要一个datetime字符串,直到sql server中datetime开始的分钟。表示我想从sql server中提取Datetime中分钟后的字符串 比如:2011-11-0213:35:14.613 我想要上面的datetime字符串- 2011-11-02 13:35 尝试此操作,将以字符串形式显示日期,格式为yyy-mm-dd hh:mm SELECT CONVERT(CHAR(16),'2011-11-02 13:35:14.613',120) 您可以使用列名而不是静态日期。

我想要一个datetime字符串,直到sql server中datetime开始的分钟。表示我想从sql server中提取Datetime中分钟后的字符串

比如:
2011-11-0213:35:14.613

我想要上面的datetime字符串-

2011-11-02 13:35

尝试此操作,将以字符串形式显示日期,格式为
yyy-mm-dd hh:mm

SELECT CONVERT(CHAR(16),'2011-11-02 13:35:14.613',120)

您可以使用列名而不是静态日期。

您的问题有点棘手,因为
CONVERT()
提供的默认格式与预期的输出不匹配。但是,格式样式
120
具有以下格式:

yyyy-mm-dd hh:mm:ss
这几乎就是你想要的,减去最后的
:ss
。要消除这种情况,您可以在调用
CONVERT()
后将其关闭:


您使用的是哪个版本的SQL Server?SQL Server 2008 R2或只需
选择CONVERT(CHAR(16),@date,120)
不需要子字符串,也不需要varchar。只需转换为所需字符的大小即可。103返回字符串格式
dd/MM/yyyy
,它不仅不会生成正确的格式,还将完全截断时间部分。Np。现在,您需要做的就是将
nvarchar
更改为
char
。这是一个固定长度的字符串,永远不会包含任何仅限unicode的字符,因此这里确实不需要使用
nvarchar
SELECT SUBSTRING(CONVERT(VARCHAR, yourDateColumn, 120), 1, 16)