日期:2014-05-17  浏览次数:20569 次

int类型数据在查询时如何转变为varchar类型?
新手,平日里做了一个小练习。
 select exitmeeall + '('+exitdate+')'
 from dida
 order by exitdate


结果返回结果为
消息 245,级别 16,状态 1,第 1 行
在将 varchar 值 '(' 转换成数据类型 int 时失败。

个人认为,由于出来的结果是“XXXX(XXXX)”的形式,将两个int数据合并时多出了“(”这个非int类型的数据,我想问一下如果解决这个问题,能够键入代码将查询结果变为varchar格式?

------解决方案--------------------
select cast(exitmeeall as varchar(10)) + '('+cast(exitdate as varchar(10))+')'
 from dida
 order by exitdate
------解决方案--------------------
try this,

 select rtrim(exitmeeall)+'('+rtrim(exitdate)+')'
 from dida
 order by exitdate