时间格式转换
想把一个日期格式的字段转换成【0801A】的格式
但是用
SELECT SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 12, 2) +
SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 15, 2) +
SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 17, 1)
的话,过了10点还好是【1001A】
10点之前的话就会变成【 801A】
怎么能把这个【 801A】变成【0801A】呀
谢谢了
[解决办法]
SELECT CAST( DATEPART( HH, GETDATE() ) AS VARCHAR(2) ) +
CAST( DATEPART( MI, GETDATE() ) AS VARCHAR(2) ) +
SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 17, 1)
[解决办法]
是这样吗:
SELECT right('00'+ltrim(SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 12, 2)),2) +
SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 15, 2) +
SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 17, 1)
/*
0125P
*/
SELECT replace('0'+SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 12, 2),' ','') +
SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 15, 2) +
SUBSTRING(CONVERT(varchar(18), GETDATE(), 0), 17, 1)