拼接字符串使用
来源:互联网 发布:ti6奖金 知乎 编辑:程序博客网 时间:2024/05/22 14:42
CREATE function Get_StrArrayStrOfIndex
(
@str varchar(1024), --要分割的字符串
@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
---取得传入字符串的长度
ALTER FUNCTION Get_StrArrayLength
(
@str VARCHAR(1024) , --要分割的字符串
@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
DECLARE @mode NVARCHAR(100)
SELECT @mode = MediaMode
FROM dbo.NMS_Form_Media
WHERE TaskID = @taskID
SELECT @lenth = dbo.Get_StrArrayLength(@mode, ',')
SET @next = 1
WHILE @next <= @lenth - 1
BEGIN
SET @num = dbo.Get_StrArrayStrOfIndex(@mode, ',', @next)
IF NOT EXISTS ( SELECT *
FROM CAMSDB_NMS.dbo.PAYEE_TVMEDIA
WHERE PayeeAccount_ID = @num
AND TVMEDIA_ID = @media_ID )
BEGIN
INSERT INTO CAMSDB_NMS.dbo.PAYEE_TVMEDIA
( TVMEDIA_ID ,
PayeeAccount_ID ,
IsStrong ,
DeadLine ,
IsSignAgreement ,
IsClientSpecify ,
BeginDate ,
EndDate ,
CushingPeriod
)
VALUES ( @media_ID , -- TVMEDIA_ID - int
@num , -- PayeeAccount_ID - int
NULL , -- IsStrong - bit
0 , -- DeadLine - smallint
NULL , -- IsSignAgreement - bit
NULL , -- IsClientSpecify - bit
NULL , -- BeginDate - smalldatetime
NULL , -- EndDate - smalldatetime
0 -- CushingPeriod - smallint
)
END
SET @next = @next + 1
END
- 拼接字符串使用
- 字符串拼接后使用
- 关于使用","拼接字符串
- C#使用Aggregate拼接字符串
- 使用Swift实现字符串拼接
- oracle 使用拼接字符串更新表
- 模糊查询不使用拼接字符串
- oracle拼接字符串处理,wm_contact函数使用
- mysql 中使用 concat 函数 拼接字符串
- Java使用占位符拼接字符串
- java字符串拼接技巧(StringBuilder使用技巧)
- Java使用占位符拼接字符串
- oracle 字符串数据拼接函数使用
- Java使用占位符拼接字符串
- 使用for xml path()进行字符串拼接
- 使用“\n\t”将多行字符串拼接起来
- html页面使用smarty拼接字符串
- [java]Java使用占位符拼接字符串
- iostream的小秘密
- 中国移动通信发展史
- 全角半角转换 笔记
- oracle直接调用web services
- jdbc.api数据库编程实作教材 笔记2
- 拼接字符串使用
- android使用 2D 方法实现倒影特效
- HP Q2612A加粉(LaserJet 1020等)
- 看老外java.sql.date中date的处理
- Android开发环境搭建全程演示(jdk+eclip+android sdk)
- TReal64转换为TBuf
- HTTP协议header头域
- Android中理解IPC框架
- 蓝本S100D考勤机LanBen10.dll资料