sql server 在游标内循环获取手机号字符串进行拼接示例

感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。
sql代码如下:

declare @dhhm as varchar(2000) --定义了变量电话号码 如果不给它赋值的则为null,后面字符串拼接的时候就会报错
    declare @rcount as int --定义变量数量!!!!!!!!!!!!!!
    set @rcount=0 --这里必须给变量赋值为0 否则就是null后面 无法++!!!!!!!!
    DECLARE @mobilnumber nvarchar(2000)
    DECLARE MyCursor1 CURSOR    --定义游标
    FOR select mobilephone from sys_user where fullname in (select * from f_splitSTR('system,杨银',','))    
    OPEN MyCursor1 --打开游标
    FETCH NEXT FROM  MyCursor1 INTO @mobilnumber
    --print ('游标开始查找数据')
    print ('foreach的状态'+convert(varchar(200),@@fetch_status))
    while(@@fetch_status=0)
    BEGIN
        set @dhhm = isnull(@dhhm,'')+@mobilnumber+',' --这里使用了isnull方法判断变量@dhhm的值 如果为null则赋值为空字符串,这样就不会引起 字符串拼接的错误了.
    --如果这里不想用isnull的话,在@dhhm,定义变量后,要给 @dhhm赋值为空即可,如:set @dhhm=''

        set @rcount = @rcount+1
        
        FETCH NEXT FROM  MyCursor1 INTO @mobilnumber
    END    
    --关闭游标
    CLOSE MyCursor1
    --释放资源
    DEALLOCATE MyCursor1
    print @dhhm
    print ('短信数量'+convert(varchar(20),@rcount))
---- 来自jb51.cc 

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...