sqlserver中根据字符分割字符串的最好的写法分享

知识点:

1、拼接SQL

2、UNION ALL

3、EXEC

其代码如下:

复制代码 代码如下:

--测试示例

declare @sql varchar(2000),@tsql nvarchar(max),@split varchar(100)

set @sql='A,B,C,D,E' --保存的字符

set @split=','--分隔符

select @tsql='select '''+replace(@sql,@split,''' union all select ''')+''''

exec(@tsql)

显示结果:

----

A

C

D

E

(5 行受影响)

时间: 2024-09-12 10:47:55

sqlserver中根据字符分割字符串的最好的写法分享的相关文章

sqlserver中根据字符分割字符串的最好的写法分享_MsSql

知识点: 1.拼接SQL 2.UNION ALL 3.EXEC 其代码如下: 复制代码 代码如下: --测试示例 declare @sql varchar(2000),@tsql nvarchar(max),@split varchar(100) set @sql='A,B,C,D,E' --保存的字符 set @split=','--分隔符 select @tsql='select '''+replace(@sql,@split,''' union all select ''')+'''' e

swift中的字符和字符串问题

问题描述 swift中的字符和字符串问题 看的1.0的教程,有一段代码是var w1 = ""hello""var w2 = "" ""var n = countElements(w1)println(n)for w in w1 { w2 +=w println(w2)}实现的效果是hhehelhellhello 而目前已经是2.0了.我根据目前自己掌握的修改了一下,还是有错误,还请帮我指正一下var w1 = "&

C语言中查找字符在字符串中出现的位置的方法_C 语言

C语言strchr()函数:查找某字符在字符串中首次出现的位置 头文件:#include <string.h> strchr() 用来查找某字符在字符串中首次出现的位置,其原型为: char * strchr (const char *str, int c); [参数]str 为要查找的字符串,c 为要查找的字符. strchr() 将会找出 str 字符串中第一次出现的字符 c 的地址,然后将该地址返回. 注意:字符串 str 的结束标志 NUL 也会被纳入检索范围,所以 str 的组后一个

sqlserver 查找某个字符在字符串中第N次出现的位置

例如:查找'A,' 在'A,B,C,D,A,B,C,D,C,D,B,A,C,E,'中第二次出现的位置怎么实现,SQL 中有这样的函数吗?   SQL code /* 方法很多,这里简单写一个 返回@find在@str中第(@n)次出现的位置.没有第(@n)次返回0. */ create function fn_find(@find varchar(8000), @str varchar(8000), @n smallint) returns int as begin if @n < 1 retu

C#中使用split分割字符串的几种方法小结_C#教程

第一种方法: 复制代码 代码如下: string s=abcdeabcdeabcde;string[] sArray=s.Split(c) ;foreach(string i in sArray)Console.WriteLine(i.ToString()); 输出下面的结果:abdeabdeabde 第二种方法: 我们看到了结果是以一个指定的字符进行的分割.使用另一种构造方法对多个字符进行分割: 复制代码 代码如下: string s=abcdeabcdeabcdestring[] sArra

SQLServer中求两个字符串的交集_MsSql

使用javascript的数组来计算,代码如下: 复制代码 代码如下: use tempdb go if (object_id ('fn_getArray' ) is not null ) drop function dbo . fn_getArray go create function fn_getArray (@ inStr1 varchar (8000 ), @ inStr2 varchar (8000 )) returns varchar (8000 ) as begin declar

SQLServer中求两个字符串的交集

使用javascript的数组来计算,代码如下: 复制代码 代码如下: use tempdb go if (object_id ('fn_getArray' ) is not null ) drop function dbo . fn_getArray go create function fn_getArray (@ inStr1 varchar (8000 ), @ inStr2 varchar (8000 )) returns varchar (8000 ) as begin declar

SqlServer中tempdb的日志机制原理解析及示例分享_MsSql

测试用例 我们分别在用户数据库(testpage),tempdb中创建相似对象t1,#t1,并在tempdb中创建创建非临时表,然后执行相应的insert脚本(用以产生日志),并记录执行时间用以比较用以比较说明tempdb"快" Code 用户数据库testpage use testpage go create table t1 ( id int identity(1,1) not null, str1 char(8000) ) declare @t datetime2=sysutcd

SqlServer中tempdb的日志机制原理解析及示例分享

测试用例 我们分别在用户数据库(testpage),tempdb中创建相似对象t1,#t1,并在tempdb中创建创建非临时表,然后执行相应的insert脚本(用以产生日志),并记录执行时间用以比较用以比较说明tempdb"快" Code 用户数据库testpage use testpage go create table t1 ( id int identity(1,1) not null, str1 char(8000) ) declare @t datetime2=sysutcd