datetime类型字段如何用0占位?
我用convert(nvarchar(10),getdate(),20)取到今天日期为'2012-03-18',但将它存入datatime类型的字段后,变成了'2012-3-18',占位的0被去掉了,请问如何能将这个占位的0也存储到该字段中呢?
[解决办法]
select ltrim(YEAR(GETDATE()))+'-'+case when MONTH(GETDATE())<=9 then '0'+LTRIM(MONTH(GETDATE())) else ltrim(MONTH(GETDATE())) end+'-'+LTRIM(DAY(getdate()))(无列名)2012-03-18
[解决办法]
convert 是在select 后面得到数据的时候处理。
不是用在insert后面,因为是表字段是时间字段,你存储后还是会变成时间类型。
如果不是datetime类型,而是varchar类型的字段,插入的时候,可以convert 后插入,这样格式就不乱变了。
[解决办法]
select replace(convert(nvarchar(10),getdate(),20),'-0','-')/*2012-3-18*/
[解决办法]