我有这个查询和它的工作正常,我转换失败
SELECT STUFF(
(SELECT ','+SLT_SubListName FROM sublists where SLT_SubListId in (1,2) FOR XML PATH('')),1,1,'');
但是当我改变在参数(1,2)到“,选择SBS_SubListId从订户其中SBS_SubscriberId = 1' 这也返回1,2-
SELECT STUFF(
(SELECT ','+SLT_SubListName FROM sublists where SLT_SubListId in (select SBS_SubListId from subscriber where SBS_SubscriberId=1
) FOR XML PATH('')),1,1,'');
其给我错误以下是
将varchar值'1,2,4,5'转换为数据类型为int时转换失败。
如果有人需要我也可以在这里发表我的表架构。 谢谢
你是对的,但我想知道为什么我必须这样做? – rahularyansharma
,因为当应用转换时,编译器会将一个元素变成'75'为整数75,所以当它在元素列表中找到','时,它不能将它转换为整数...这就是为什么...... –