我有以下sql代码(ms sql server 2008)
select (analysisno + ' ' + '-' + ' ' + description + ' ' + '-' + ' ' + formdate) as columnA
来自Old_Analysis_Data的按表格命令
我从字符串转换日期和/或时间时出现以下错误转换失败。
AnalysisNo是一个varchar(10) 描述是一个varchar(500) formdate是一个日期时间 (不是我的桌子,它是旧桌子)
任何想法,都无法在谷歌上找到答案。
答案 0 :(得分:1)
在连接之前使用转换将时间转换为字符串:
SELECT ( analysisno + ' ' + '-' + ' ' + description + ' ' + '-' + ' '
+ CONVERT(VARCHAR(20), formdate, 100) ) AS columnA
FROM
Old_Analysis_Data
ORDER BY
formdate
在这种情况下,100是一种将日期戳格式设置为mon dd yyyy hh:miAM(或PM)的样式
答案 1 :(得分:0)
试试这个:
select (analysisno + ' - ' + description + ' - '
+ convert(varchar(100),formdate)) as columnA
from Old_Analysis_Data order by formdate
答案 2 :(得分:0)
不是直接连接formdate
,而是先将其转换为字符串,
convert(varchar(15), formdate, 103)
,它提供以下格式
dd/MM/yyyy