sql的split()函数
ALTER function [dbo].[StrToList_Test](@Str varchar(max), @fg NVARCHAR())
returns @table table(
value nvarchar(max)
)
as
begin declare @tempStr nvarchar(max),@len INT = LEN(@fg);
--去除前后分割符
while substring(@Str,,@len)=@fg
begin
set @Str=substring(@Str,@len+,len(@Str))
end
while RIGHT(@Str,@len)=@fg
begin
set @Str=substring(@Str,,len(@Str)-@len)
end if(len(@Str)>)
begin
while(charindex(@fg,@Str)>)
begin
set @tempStr=substring(@Str,,charindex(@fg,@Str)-)
insert into @table(value) values(@tempStr)
set @Str=substring(@Str,charindex(@fg,@Str)+@len,len(@Str))
end
insert into @table(value) values(@Str) --没有分割符保存值
end
return
end
调用如:select * from [dbo].[StrToList_Test]('ab||cd||ef||ghi||jg','||')
sql的split()函数的更多相关文章
- 【SQL】sql版Split函数。用于拆分字符串为单列表格
功能与.net版string.Split函数类似,只不过.net返回的是数组,这个返回的是一个单列表格,每个拆分出来的子串占一行.可选是否移除空格子串和重复项.市面上类似的函数不算少,但大多都是在循环 ...
- sql server split函数
--创建分割函数CREATE FUNCTION dbo.Split(@String varchar(8000),@Delimiter char(1))returns @temptable TABLE ...
- 【转】mysql用sql实现split函数
关键词:mysql split mysql根据逗号将一行数据拆分成多行数据1.原始数据演示 2.处理结果演示 3.sql语句 SELECT a.id , a.NAME , substring_inde ...
- SQL Server 完美SPLIT函数
-- SQL Server Split函数 -- Author:zc_0101 -- 说明: -- 支持分割符多字节 -- 使用方法 -- Select * FROM DBO. ...
- SQL中实现SPLIT函数几种方法
例1 代码如下 复制代码 create function f_split(@SourceSql varchar(8000),@StrSeprate varchar(10))returns @temp ...
- oracle pl/sql split函数
在软件开发过程中程序员经常会遇到字符串的拼接和拆分工作. 以java开发为例: 前台传入字符串拼接形式的一个JSON数据,如:"1001,1002,1003",这可能代表了一组序号 ...
- oracle实现split函数功能
转载: http://blog.csdn.net/jojo52013145/article/details/6758279在实际的应用中,为了让PL/SQL 函数返回数据的多个行,必须通过返回一个 R ...
- MSSQL—字符串分离(Split函数)
前面提到了记录合并,有了合并需求肯定也会有分离需求,说到字符串分离,大家肯定会想到SPLIT函数,这个在.NET,Java和JS中都有函数,很可惜在SQL SERVER中没有,我们只能自己来写这么一个 ...
- pipe row的用法, Oracle split 函数写法.
为了让 PL/SQL 函数返回数据的多个行,必须通过返回一个 REF CURSOR 或一个数据集合来完成.REF CURSOR 的这种情况局限于可以从查询中选择的数据,而整个集合在可以返回前,必须进行 ...
随机推荐
- C#正则表达式匹配HTML中的图片路径
最近的项目中有个关于网页取图的功能需要我自己开发,那就是用正则表达式来匹配图片标签. 一般来说一个 HTML 文档有很多标签,比如“<html>”.“<body>”.“< ...
- Eclipse和MyEclipse使用技巧--Eclipse中使用Git-让版本管理更简单
详细步骤: 第一部分 GIT介绍 (1)GIT往世今生 2005年开发Samba的Andrew试图破解BitKeeper(一款商业的版本控制系统)的协议(这么干的其实也不只他一个),被BitMove ...
- TCP_Wrappers
TCP_Wrappers配置 这里主要涉及到两个配置文件/etc/hosts.allow和/etc/hosts.deny./usr/sbin/tcpd进程会根据这两个文件判断是否对访问请求提供服务. ...
- ios中开始页面做法
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launc ...
- [转]NLP数据集
原文链接 nlp-datasets Alphabetical list of free/public domain datasets with text data for use in Natural ...
- 不让复制是不可能的----js获取选中文字
在360百科.知乎上经常会遇见禁止复制文本的情形,这能挡住一部分人复制,却挡不住程序员的复制. HTML都给我了,难道一小段文本我都拿不下来吗? F12打开控制台,然后选中文本,在控制台下粘贴以下代码 ...
- CTF SQL注入知识点
理解常用的登录判断 select * from user where username='admin' and password='123' 数据库元信息 infomation_schema 懂PHP ...
- SoapUI利用Groovy对response与断言的处理
1.对response的处理:(其中Test Request是request的名称) def groovyUtils = new com.eviware.soapui.support.GroovyUt ...
- 消息队列状态:struct msqid_ds
Linux的消息队列(queue)实质上是一个链表, 它有消息队列标识符(queue ID). msgget创建一个新队列或打开一个存在的队列; msgsnd向队列末端添加一条新消息; msgrcv从 ...
- HDU 4638 Group (线段树 | 树状数组 + 离线处理)
Group Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...