参考:SQL server中null+字符串,isnull以及把查询结果赋给一个字符变量组成另一个查询语句

 1.开始定义的字符串都为null.例如:declare @sql,那么@sql就是null 如果后面要进行 变量字符串的变量拼接的话,最好是给@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))

sql中字符串的截取:http://www.cnblogs.com/yeminglong/archive/2011/10/15/2212967.html

declare @id as varchar(50)
set @id='123456,'
select SUBSTRING(@id,0,Len(@id))
返回结果 123456 ,最后的逗号去掉了

sql server 变量 字符串拼接的更多相关文章

  1. SQL Server:字符串函数

    以下所有例子均Studnet表为例: 1. len():计算字符串长度 len()用来计算字符串的长度,每个中文汉字或英文字母都为一个长度 select sname, len(sname) from ...

  2. SQL Server 分隔字符串函数实现

    在SQL Server中有时候也会遇到字符串进行分隔的需求.平时工作中常常遇到这样的需求,例如:人员数据表和人员爱好数据表,一条人员记录可以多多人员爱好记录,而往往人员和人员爱好在界面展示层要一并提交 ...

  3. .NET SQL Server连接字符串句法

    .NET SQL Server连接字符串句法 数据库的连接性已经发展成为应用程序开发的一个标准方面.数据库连接字符串现在已经成为每个项目的标准必备条件.我发现自己为了找到所需要的句法,经常要从另外一个 ...

  4. MS SQL Server 数据库连接字符串详解

    MS SQL Server 数据库连接字符串详解 原地址:http://blog.csdn.net/jhhja/article/details/6096565 问题 : 超时时间已到.在从池中获取连接 ...

  5. SQL Server截取字符串

    --SQL Server截取字符串 , Len('hello@163.com')) ,charindex('.','hello@163.com'))

  6. delphi连接sql server的字符串2011-10-11 16:07

    delphi连接sql server的字符串2011-10-11 16:07 一.delphi连接sql server 放一个连接组件 ADOConnection, 其它组件TADODataSet,T ...

  7. SQL Server变量赋值的方法

    SQL Server变量赋值我们经常会遇到,下面就为您介绍SQL Server变量赋值的两种方法,希望可以对您学习SQL Server变量赋值有所帮助. SQL Server中对已经定义的SQL Se ...

  8. 如何获取SQL Server数据库连接字符串的某些部分

    有的时候需要获取SQL Server数据库连接字符串的某些部分.用正则表达式可能有点麻烦. 其实有一个比较简单的方法--使用SqlConnectionStringBuilder. var builde ...

  9. sql server中单引号拼接字符串(书写错误会出现错误"浮点值 XXXX 超出了计算机表示范围(8 个字节)。“XX”附近有语法错误。")

    " ' "(单引号)的运用:在sql server中,两个" ' "(单引号)在拼接字符串的情况下运用,就是表示拼接上了一个" ' "单引号 ...

随机推荐

  1. 【BZOJ1403】Divisibility Testing(数论)

    题意: 思路: #include<cstdio> #include<cstdlib> #include<algorithm> #include<map> ...

  2. 大话数据结构——KMP算法(还存在问题)

    http://www.ruanyifeng.com/blog/2013/05/Knuth%E2%80%93Morris%E2%80%93Pratt_algorithm.html /*#include& ...

  3. c++ 实现 key-value缓存数据结构

    c++ 实现 key-value缓存数据结构 概述 最近在阅读Memcached的源代码,今天借鉴部分设计思想简单的实现了一个keyvalue缓存. 哈希表部分使用了unordered_map,用于实 ...

  4. Two Sum(hashtable)

    Given an array of integers, find two numbers such that they add up to a specific target number. The ...

  5. centOS 安装mysql5.6

    删除原先的mysql5.1#数据库服务器的安装 , 请自行在mysql官方找最新的rpm rpm -Uvh http://dev.mysql.com/get/mysql-community-relea ...

  6. 文本框变更值触发js事件

    //输入数量更新,不需要失去焦点才触发 $(document).on('input', "input[id^='itemquantity']", function () { sav ...

  7. 巧用MySQL AHI加速神器,让你的InnoDB查询飞起来!

    DBAPLUS  http://mp.weixin.qq.com/s/cIjQIz-ZngSYJ3k2ZBBSsg

  8. ios UITableView 获取点击cell对象

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { UITabl ...

  9. Google C++ style guide——C++类

    1.构造函数的职责 构造函数中仅仅进行那些没有实际意义的初始化.由于成员变量的"有意义"的值大多不在构造函数中确定. 能够的话,使用Init()方法集中初始化为有意义的数据. 长处 ...

  10. Android Studio一些简单设置

          简单设置   1.默认主题设置 默认的 Android Studio 为灰色界面,能够选择使用炫酷的黑色界面. Settings --> Appearance --> Them ...