问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql server中的标量值函数的问题

发布网友 发布时间:2022-04-08 04:25

我来回答

3个回答

懂视网 时间:2022-04-08 08:47

function [dbo].[Get_StrArrayStrOfIndex] ( @str nvarchar(max), --要分割的字符串 @split varchar(10), --分隔符号 @index int --取第几个元素 ) returns varchar(1024) as begin declare @location int declare @start int declare @next int declare @seed int set @str=ltrim(rtrim(@str)) set @start=1 set @next=1 set @seed=len(@split) set @location=charindex(@split,@str) while @location<>0 and @index>@next begin set @start=@location+@seed set @location=charindex(@split,@str,@start) set @next=@next+1 end if @location =0 select @location =len(@str)+1 --这儿存在两种情况:1、字符串不存在分隔符号 2、字符串中存在分隔符号,跳出while循环后,@location为0,那默认为字符串后边有一个分隔符号。 return substring(@str,@start,@location-@start) end GO

获取逗号分隔的字符串的个数

CREATE function [dbo].[Get_StrArrayLength]
(
 @str nvarchar(max), --要分割的字符串
 @split varchar(10) --分隔符号
)
returns int
as
begin
 declare @location int
 declare @start int
 declare @length int

 set @str=ltrim(rtrim(@str))
 set @location=charindex(@split,@str)
 set @length=1
 while @location<>0
 begin
 set @start=@location+1
 set @location=charindex(@split,@str,@start)
 set @length=@length+1
 end
 return @length
end

GO

 

按照某个符号分割字符串 翻来一张表

CREATE FUNCTION [dbo].[SplitStringToTable] 
( 
 @String nvarchar(4000), --格式如:“1,2,3,4,”
 @SplitChar nvarchar(10) --分割的字符:“,”
) 
RETURNS @table Table(ID varchar(100)) 
AS 
BEGIN 
 DECLARE @Index INT 
 SET @Index = 0 

 IF @String <> ‘‘
 Begin
  IF RIGHT(@String,1)<> @SplitChar 
  SET @String = @String + @SplitChar
  IF LEFT(@String,1)= @SplitChar 
  SET @String = STUFF(@String, 1, 1, ‘‘)
 End
 
 WHILE CHARINDEX(@SplitChar,@String,@Index) > 0 
 BEGIN 
  INSERT INTO @table(ID)
  VALUES (SUBSTRING(@String, @Index, CHARINDEX(@SplitChar, @String,
  @Index) - @Index))
  SET @index = CHARINDEX(@SplitChar, @String, @Index) + 1 END 
RETURN 
END
GO

 

sqlserver几个好用的表值函数和标量函数

标签:

热心网友 时间:2022-04-08 05:55

标量值函数里面只能返回单个类型的值,你下面的那个SELECT出来是一个数据集,是不能直接在标量值函数里用的
你的第一个是SELECT出来的值赋给一个变量的,这样是可以的

热心网友 时间:2022-04-08 07:13

count()
汇总个数,sum()汇总总和.比如一个学生表
student,
mark(id,score)
成绩表
select
count(*)
from
student
--所有同学的个数
select
sum(score)
from
mark
--求出所有分数的总和
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
罗马全面战争怎么样提高元老院评价? 半夜家中镜匾忽然碎了 镜子忽然碎掉怎么解 化能异养型微生物分类 如何判断自养微生物与异养微生物 如何得知某微生物是否为哪种氨基酸的异养型微生物。 滨州市北海振宇电子科技有限责任公司怎么样? 北京振宇科技有限公司怎么样? 上海振宇化工科技有限公司经营范围 商业医保是否值得购买? 24小时无人售货机里面可不可以用现金支付?怎么找零?(成人用品) 一见钟情表白的话 无人售货机支付系统价异常什么原因? 有哪些有文艺气息的表白的话 文艺略古风的深情的表白句子有哪些? 表白的文艺句子。 如何文艺表白 徐州哪里有3m防尘口罩 有哪些关于管理会计的书籍值得现在看? 活性炭口罩哪里能买到? 谁有《管理会计》 第八版 北京大学出版社的电子档,速求!!! 茄酱意面的做法,茄酱意面怎么做好吃,茄酱意面 全国大型劳保安全用品批发市场都有哪些? 管理会计套备考教材比较有没有人知道? 沈阳哪批发有地球牌3200防尘口罩吗 谁有大学管理会计学视频百度云资源啊 请问哪里有:会计学教程与案例.管理会计分册(第11版) 的 电子书啊?买也行 前海阳光采购网上面有批发防尘口罩的供应商吗? 求会计学:企业决策的基础(财务会计分册)中文(原书第16版)PDF 茶叶蛋怎么做才好吃,可以放几天 怎么个方法! 华为nova7pro屏幕多少钱 家政服务包括哪些项目- 问一问 男士冬季喝什么茶叶比较好 男人冬天怎么补身体最好? 男性冬季宜喝养生汤有哪些 冬天男人补什么最好,冬天男人可以补什么,男人冬天吃 djimini2自动返航高度是按照设定高度返航还是当时高度返航 大疆御mavic pro智能返航和一键返航的区别? 无人机在大理洱海边飞行时非人为原因无故失联 自动返航却越飞越远... SQL SERVER函数之深入表值函数的处理分析 福利彩票91期 从来不懂炒股的人学会炒股需要多长时间? 股票要多久才能学会? 社会上有多少种职业?最好能一一列举。 为摆脱经济危机,英国走什么路 学习股票需要几年 我想知道1991年公历8月9号出生的男狮子座的性格 91年属羊的和哪个属相在一起好 有释心两个字的微信个性签名? 天天象棋112关通关攻略 第112关怎么过