Sqlserver的int和varchar类型拼接的问题
declare@IDbigintdeclare@countbigintdeclare@sqlvarchar(max)set@sql=''set@ID=1set@count...
declare @ID bigint
declare @count bigint
declare @sql varchar(max)
set @sql=''
set @ID=1
set @count=10
set @sql =@sql+'update User set Medal='+@count+' where ID=@'+@ID+';'
主要是最后一句话
我想问的是 在Sqlserver里 想拼接int和varchar怎么办
亲们 回答下把 展开
declare @count bigint
declare @sql varchar(max)
set @sql=''
set @ID=1
set @count=10
set @sql =@sql+'update User set Medal='+@count+' where ID=@'+@ID+';'
主要是最后一句话
我想问的是 在Sqlserver里 想拼接int和varchar怎么办
亲们 回答下把 展开
2个回答
展开全部
1、首先在数据表Table_1中有两列类型为数值的列num1和num2,类型分别为int和float。数据如图所示。
2、采用convert或cast函数进行数据类型转换,然后再使用“+”进行字符拼接。转换之后的类型可以是:char、nchar、varchar、nvarchar等。
3、convert函数的格式为:convert(varchar(20),num1)其中varchar为可变长度的字符串,20为字符串的最大长度,使用varchar的好处是可以避免结果中出现空格。如果需要空格,则可以考虑使用char。下图为以下查询结果。
4、cast函数的格式为:cast(num1 as varchar(20))关于数据格式参见上一步的说明。下图为以下查询结果。
5、1和2的结果完全相同。这里说明由于对varchar和int使用“+”运算符时,会自动转换varchar为int,因此一定要对两组数值都进行转换,就可以了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询