如何将数字格式化为字符串
我的表达式:
a1.RKMX_RowID+CONVERT(varchar(100), a2.RK_RQ, 112)a1.RKMX_RowID=1
a2.RK_RQ=2009-4-5想要的结果: 120090405但我的表达式结果为:20090406
我的表达式:
a1.RKMX_RowID+CONVERT(varchar(100), a2.RK_RQ, 112)a1.RKMX_RowID=1
a2.RK_RQ=2009-4-5想要的结果: 120090405但我的表达式结果为:20090406
a2.RK_RQ=2009-4-5
数字类型+字符型,sql会先尝试将字符型转成数字型,再相加,当字符型不能转成数字型时,就报错
要呈现120090406,是字符串合并
所以要将a1.RKMX_RowID也转成字符型
套上 rtrim(a1.RKMX_RowID) 或 ltrim(a1.RKMX_RowID) 或 convert(varchar,a1.RKMX_RowID)
set @i=1
select cast(@i as varchar)+convert(varchar(10),getdate(),112)
select @RKMX_RowID='1',@RK_RQ='2009-4-5'select @RKMX_RowID+convert(char(8),cast(@RK_RQ as datetime),112)
/*
----------------------------
120090405(所影响的行数为 1 行)
*/