Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.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日期格式应类似于;2014年10月17日晚上10:14”;_Sql_Sql Server_Database_Sql Server 2008 - Fatal编程技术网

Sql Server日期格式应类似于;2014年10月17日晚上10:14”;

Sql Server日期格式应类似于;2014年10月17日晚上10:14”;,sql,sql-server,database,sql-server-2008,Sql,Sql Server,Database,Sql Server 2008,我需要将日期显示为“2014年10月10日下午1:06” 我的SQL查询是 SELECT STUFF(CONVERT(char(19), CURRENT_TIMESTAMP, 100), 18,0, ' ') 选择填充(转换(字符(19),当前时间戳,100),18,0',) 它的表现就像 “2014年10月10日下午1:06”您已经掌握了stuff的语法。你为什么不再加一点呢 SELECT STUFF(STUFF(CONVERT(char(19), CURRENT_TIMESTAMP,

我需要将日期显示为“2014年10月10日下午1:06”

我的SQL查询是

SELECT STUFF(CONVERT(char(19), CURRENT_TIMESTAMP, 100), 18,0, ' ') 选择填充(转换(字符(19),当前时间戳,100),18,0',) 它的表现就像


“2014年10月10日下午1:06”

您已经掌握了stuff的语法。你为什么不再加一点呢

SELECT 
  STUFF(STUFF(CONVERT(char(19), CURRENT_TIMESTAMP, 100), 18,0, ' '), 7,0, ',')

这不可能直接在sqlserver中实现。你只需要再使用一个函数,比如

SELECT STUFF(STUFF(CONVERT(CHAR(19), CURRENT_TIMESTAMP, 100), 18, 0, ' '), 7, 0, ',')

请查看以下格式

select convert(varchar, CURRENT_TIMESTAMP, 107) + ' ' + REVERSE(STUFF(SUBSTRING(REVERSE(CONVERT(char(19), CURRENT_TIMESTAMP, 100)), 0, CHARINDEX(' ', REVERSE(CONVERT(char(19), CURRENT_TIMESTAMP, 100)))),3,0,' '))

你能试试我贴的回信吗。重复回答:)他需要在AM/PMdate之前留出空格,因为日期在1-9之间时长度可能不同。@NareshPansuriya,否日期的长度总是相同的。试试这个:选择素材(素材(转换(char(19),cast('2014-10-09'as date),100),18,0',,7,0',),这有点过分了,太复杂了。当您知道表达式的长度时,应该始终使用char(X)。当使用varchar时,您应该始终在varchar(X)@t-clausen.dk中指定长度:谢谢您的建议
select convert(varchar, CURRENT_TIMESTAMP, 107) + ' ' + REVERSE(STUFF(SUBSTRING(REVERSE(CONVERT(char(19), CURRENT_TIMESTAMP, 100)), 0, CHARINDEX(' ', REVERSE(CONVERT(char(19), CURRENT_TIMESTAMP, 100)))),3,0,' '))