复制代码 代码如下:
CREATE function getcolor
(@井号 varchar(50),@层位 varchar(50))
returns varchar(200)
as
begin
declare @sql varchar(2000);set @sql=''
--distinct
select @sql=@sql+ 颜色+',' from (
select distinct 颜色 from yourtablename where
井号=@井号 and 层位=@层位 and 颜色 is not null
) aa
set @sql=substring(@sql,1,len(@sql)-1)
return @sql
end


我发现set @sql=substring(@sql,1,len(@sql)-1)这句有的时候会报错,原因是@sql在用substring的时候,有时候会为空字符串

请问在函数中,如何在substring之前判断下@sql是否为空?

if @sql is not null and len(@sql) >= 1
set @sql=substring(@sql,1,len(@sql)-1)
else
...

复制代码 代码如下:

if(@sql is not null)
set @sql=substring(@sql,1,len(@sql)-1)
return @sql


复制代码 代码如下:
if isnull(@sql,'')<>''
set @sql=substring(@sql,1,len(@sql)-1)


"select * from db where img is not null"这个是选择所有的img不为空的内容
"select * from db where img is null"这个是选择所有的img为空的内容

如果要让SQL判断值为空时默认一个值则可以用这样用
SELECT top 1 isnull(Yu_Yse_Commodity_KD,0) FROM [Yu_Records]

更多相关文章

  1. MySQL 5.7.9 服务无法启动-“NET HELPMSG 3534”的解决方法
  2. ES6 变量声明,箭头函数,数组方法,解构赋值,JSON,类与继承,模块化练习
  3. 浅谈Java中Collections.sort对List排序的两种方法
  4. Python list sort方法的具体使用
  5. python list.sort()根据多个关键字排序的方法实现
  6. android上一些方法的区别和用法的注意事项
  7. android实现字体闪烁动画的方法
  8. Android中dispatchDraw分析
  9. Android四大基本组件介绍与生命周期

随机推荐

  1. jQuery中$.get、$.post、$.getJSON和$.aj
  2. js或Jquery中判断字符串中是否有换行符或
  3. 如何使用javascript或jquery获取图像的自
  4. jQuery——将title属性用作悬停的文本,但
  5. 将AngularJS、jQueryUI、Angular-Drag-Dr
  6. 我需要从jquery ajax post中撤回数据并将
  7. scrollTop到溢出滚动div中的活动元素
  8. [入门篇]Jquery读取.Net WebService Json
  9. html页面传值问题已解决
  10. 关于各种js框架的选择