SQL server中字符串逗号分隔函数分享

作者:mdxy-dxy 时间:2024-01-12 17:20:22 

继SQl -Function创建函数数据库输出的结果用逗号隔开,在开发中也有许多以参数的形式传入带逗号字条串参数(数据大时不建议这样做)

例:查找姓名为“张三,李二” 的数据此时在数据库里就要对此参数做处理如图:

SQL server中字符串逗号分隔函数分享

函数代码如下


CREATE FUNCTION [dbo].[fnSplitStr] (
@sText  NVARCHAR(Max),
@sDelim  CHAR(1)
)

RETURNS @retArray TABLE (
value VARCHAR(100)
)
AS
BEGIN
DECLARE
 @posStart  BIGINT,
 @posNext  BIGINT,
 @valLen   BIGINT,
 @sValue   NVARCHAR(100);

IF @sDelim IS NULL
BEGIN
 IF LEN(@sText)>100 SET @sText = SUBSTRING(@sText, 1, 100)

INSERT @retArray (value)
 VALUES (@sText);
END
ELSE
BEGIN
 SET @posStart = 1;

WHILE @posStart <= LEN(@sText)
 BEGIN
  SET @posNext = CHARINDEX(@sDelim, @sText, @posStart);

IF @posNext <= 0
   SET @valLen = LEN(@sText) - @posStart + 1;
  ELSE
   SET @valLen = @posNext - @posStart;

SET @sValue = SUBSTRING(@sText, @posStart, @valLen);
  SET @posStart = @posStart + @valLen + 1;

IF LEN(@sValue) > 0
  BEGIN
   IF LEN(@sValue)>100 SET @sValue = SUBSTRING(@sValue, 1, 100)

INSERT @retArray (value)
   VALUES (@sValue);
  END
 END
END
RETURN
END

好了,关于sql字符串逗号分隔函数就介绍到这,大家可以参考一下。

标签:字符串,逗号分隔,函数
0
投稿

猜你喜欢

  • 解决微信浏览器缓存站点入口文件(IIS部署Vue项目)

    2024-05-13 10:40:00
  • jquery.jsPlumb实现拓扑图

    2024-05-09 10:15:49
  • Python处理中文标点符号大集合

    2021-12-07 16:03:45
  • ASP中遍历和操作Application对象的集合

    2007-09-13 12:45:00
  • Python3使用requests包抓取并保存网页源码的方法

    2022-05-27 06:48:38
  • ChatGPT 帮我自动编写 Python 爬虫脚本的详细过程

    2021-09-09 09:13:50
  • MYSQL大表加索引的实现

    2024-01-16 03:12:36
  • Python拼接字符串的7种方法总结

    2022-10-28 08:38:00
  • python编写计算器功能

    2022-10-29 14:07:33
  • python numpy.ndarray中如何将数据转为int型

    2022-11-21 16:14:09
  • MySQL Daemon failed to start错误解决办法

    2024-01-16 23:22:21
  • vue iview的菜单组件Mune 点击不高亮的解决方案

    2024-06-07 15:20:08
  • python中getattr函数使用方法 getattr实现工厂模式

    2021-02-25 00:34:30
  • python中的sys模块和os模块

    2021-07-06 00:43:17
  • 一文详解Python中的super 函数

    2022-02-26 03:18:35
  • MySQL命令行导出导入数据库实例详解

    2024-01-22 08:57:22
  • Python/Django后端使用PIL Image生成头像缩略图

    2021-12-18 09:46:27
  • python 按不同维度求和,最值,均值的实例

    2023-06-12 15:08:23
  • SQL Server误区30日谈 第24天 26个有关还原(Restore)的误区

    2024-01-27 19:39:51
  • Python面向对象之类和对象属性的增删改查操作示例

    2021-11-06 14:20:40
  • asp之家 网络编程 m.aspxhome.com