怎么简化这个Convert?

渔歌樵夫 2013-08-14 10:05:56
某表有多个布尔字段,某个运算的时候需要把布尔转换成varchar,一般的做法像下面的写法,多个convert相加,有没有简单的写法能省去这么多个Convert?用一个Convert行不行?
CONVERT(VARCHAR,C1) + CONVERT(VARCHAR,C2) + CONVERT(VARCHAR,C3) + CONVERT(VARCHAR,C4)
...全文
145 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Shawn 2013-08-15
  • 打赏
  • 举报
回复
能。就是在存储过程中把‘1,2,3,4’这样的字符串解析成一张表,然后再和ITEM表进行JOIN即可。你可以从网上查一下关键字:字符串拆分
渔歌樵夫 2013-08-15
  • 打赏
  • 举报
回复
wwwwgou: 还有一种方式是过程接收xml,2005以上的版本支持xml,字符串拆分和用xml哪个方式更好?
渔歌樵夫 2013-08-14
  • 打赏
  • 举报
回复
wwwwgou,再问一个问题 很多时候存储过程根据传过来的Id号查询相关记录,这样必须在过程里解析Id,我现在的方法是拼接sql,然后再exec,能不能不用拼接,不用最后跑exec? 举例: DECLARE @IncludeItems VARCHAR(100), @sRid varchar(100) set @sRid = '10101,10102,10201' SET @IncludeItems = 'SELECT Rid INTO #IncludeItemss FROM Item WHERE Rid IN(' + @sRid + ')' EXEC (@IncludeItems)
渔歌樵夫 2013-08-14
  • 打赏
  • 举报
回复
见到wwwwgou即刻结贴,谢谢。
Shawn 2013-08-14
  • 打赏
  • 举报
回复
--只能简化成这样子了
LTRIM(C1) + LTRIM(C2) + LTRIM(C3) + LTRIM(C4) 

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧