用游标,找到逗号,然后保留 逗号和逗号后第一位怎么写
用游标,找到逗号,然后保留 逗号和逗号后第一位如何写
执行前是下面这样的
群链球菌'qun'lian'qiu'jun'90
执行后是
群链球菌'q'l'q'j'9
我想应该使用游标,找到逗号,然后保留 逗号和逗号后第一位,但想不到怎么样写语句
下面是要做的一部分数据
癌症'ai'zheng'90
癌症康复会'ai'zheng'kang'fu'hui'90
癌症中心'ai'zheng'zhong'xin'90
艾本'ai'ben'90
艾迪注射液'ai'di'zhu'she'ye'90
艾恒'ai'heng'90
艾去适'ai'qu'shi'90
艾瑞宁'ai'rui'ning'90
艾司洛尔'ai'si'luo'er'90
艾素'ai'su'90
艾愈胶囊'ai'yu'jiao'nang'90
爱必妥'ai'bi'tuo'90
爱扶康贴膏'ai'fu'kang'tie'gao'90
爱克兰'ai'ke'lan'90
安吖啶'an'a'ding'90
安吖啶注射液'an'a'ding'zhu'she'ye'90
安达芬'an'da'fen'90
------解决方案--------------------
不需要用游标。用函数就可以了。
执行前是下面这样的
群链球菌'qun'lian'qiu'jun'90
执行后是
群链球菌'q'l'q'j'9
我想应该使用游标,找到逗号,然后保留 逗号和逗号后第一位,但想不到怎么样写语句
下面是要做的一部分数据
癌症'ai'zheng'90
癌症康复会'ai'zheng'kang'fu'hui'90
癌症中心'ai'zheng'zhong'xin'90
艾本'ai'ben'90
艾迪注射液'ai'di'zhu'she'ye'90
艾恒'ai'heng'90
艾去适'ai'qu'shi'90
艾瑞宁'ai'rui'ning'90
艾司洛尔'ai'si'luo'er'90
艾素'ai'su'90
艾愈胶囊'ai'yu'jiao'nang'90
爱必妥'ai'bi'tuo'90
爱扶康贴膏'ai'fu'kang'tie'gao'90
爱克兰'ai'ke'lan'90
安吖啶'an'a'ding'90
安吖啶注射液'an'a'ding'zhu'she'ye'90
安达芬'an'da'fen'90
------解决方案--------------------
不需要用游标。用函数就可以了。
- SQL code
create function ppp(@text varchar(1000)) returns varchar(100) as begin declare @return varchar(100) set @return='' while(charindex('''',@text)>0) begin set @return=@return+''''+substring(@text,charindex('''',@text)+1,1) set @text=substring(@text,charindex('''',@text)+1,len(@text)) end return @return end 调用函数: select dbo.ppp('''qun''lian''qiu''jun''90') 因为'是sql的标记,所以要每个'号前面要加一个转义字符 如果你是对表里的字段进行处理。只需要: select dbo.ppp(字段名) from 表名