【转】sqlserver字符串拆分(split)方法汇总
Java、.net等开发工具具有split功能,最近在Sqlserver中碰到这个需求。
方法1:动态SQL法
declare @string varchar(100),@sql varchar(1000)
set @string='1,2,3,4,5,6,7,8,9,10'
set @sql='select col='''+ replace(@string,',',''' union all select ''')+''''
PRINT @sql
exec (@sql)
当然,如果您的字符串是'1*2'或者其他格式,只需要在replace函数中修改符号即可。
--方法2:循环截取法
CREATE FUNCTION F_SplitSTR(
@string varchar(8000), --待分拆的字符串
@symbol varchar(10) --数据分隔符
)RETURNS @table TABLE(col varchar(100))
AS
BEGIN
DECLARE @splitlen int
SET @splitlen=LEN(@symbol)-1
WHILE CHARINDEX(@symbol,@string)>0
BEGIN
INSERT @table VALUES(LEFT(@string,CHARINDEX(@symbol,@string)-1))
SET @string=STUFF(@string,1,CHARINDEX(@symbol,@string)+@splitlen,'')
END
INSERT @table VALUES(@string)
RETURN
END
GO
【转】sqlserver字符串拆分(split)方法汇总的更多相关文章
- (转自aierong原创技术随笔)sqlserver字符串拆分(split)方法汇总
sqlserver字符串拆分(split)方法汇总 --方法0:动态SQL法declare @s varchar(100),@sql varchar(1000)set @s='1,2,3,4,5, ...
- sqlserver字符串拆分(split)方法汇总
--方法0:动态SQL法declare @s varchar(100),@sql varchar(1000)set @s='1,2,3,4,5,6,7,8,9,10'set @sql='select ...
- Sql Server字符串拆分(Split)方法汇总
详细链接:https://shop499704308.taobao.com/?spm=a1z38n.10677092.card.11.594c1debsAGeak--方法0:动态SQL法 declar ...
- sqlserver字符串合并(merge)方法汇总
--方法1--使用游标法进行字符串合并处理的示例.--处理的数据CREATE TABLE tb(col1 varchar(10),col2 int)INSERT tb SELECT 'a',1UNIO ...
- sql之cursor的简介和字符串拆分(split)与游标的使用
字符串拆分(split)与游标的使用 CREATE TABLE Plates ( ,), ) NOT NULL, [BusinessId] INT NOT NULL, ) ),),), SELECT ...
- JS对象 字符串分割 split() 方法将字符串分割为字符串数组,并返回此数组。 语法: stringObject.split(separator,limit)
字符串分割split() 知识讲解: split() 方法将字符串分割为字符串数组,并返回此数组. 语法: stringObject.split(separator,limit) 参数说明: 注意:如 ...
- sqlserver 字符串拆分和取某分隔符之前的字符串
ALTER FUNCTION [dbo].[f_splitSTR]( ), --待分拆的字符串 ) --数据分隔符 )RETURNS @re TABLE( col varchar(max)) AS B ...
- 字符串拆分split
public static void main(String[] args) { String s = "A1B2C3D4E5F6G7H8"; String[] arr1 = s. ...
- sqlserver字符串拆分函数
CREATE FUNCTION f_splitSTR(@s varchar(8000), --待分拆的字符串@split varchar(10) --数据分隔符)RETURNS @re TABLE(c ...
随机推荐
- 洛谷P4493 [HAOI2018]字串覆盖(后缀自动机+线段树+倍增)
题面 传送门 题解 字符串就硬是要和数据结构结合在一起么--\(loj\)上\(rk1\)好像码了\(10k\)的样子-- 我们设\(L=r-l+1\) 首先可以发现对于\(T\)串一定是从左到右,能 ...
- VS2010 UAC执行级别修改
配置属性 -> 链接器 -> 清单文件 -> UAC执行级别 改为 requireAdministrator 这个级别即可.
- maven设置------settings.xml文件学习
https://blog.csdn.net/tomato__/article/details/13025187 快速预览 maven的配置文件为settings.xml,在下面路径中可以找到这个文件, ...
- 19年PDYZ冬令营游记
我和卓越的那些事 ——2019年平度一中卓越计划冬令营 题前记: 正月十三那天,刚看完<流浪地球>,便接到了一个电话,老妈告诉我竟然一中组织了一个冬令营,并且起了一个很好的名字“卓越计 ...
- echart使用与后台交互
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- php 对象的自定义遍历
php对象的自定义遍历 对手册中的案例进行分析 更好的理解foreach() 的遍历步骤 class myIterator implements Iterator { private $positio ...
- ubuntu下安装fcitx五笔输入法
安装fcitx输入法 sudo add-apt-repository ppa:fcitx-team/stable #添加安装源,apt-get 添加,night ...
- 数据结构5.4_m元多项式的表示
三元多项式表示如下: P(x,y,z) = x10y3z2 + 2x6y3z2 + 3x5y2z2 + x4y4z + 6x3y4z + 2yz + 15 然后对式子进行变形: P(x,y,z)=(( ...
- Karma+Jasmine测试环境搭建
1.如果你还没安装node的话,去这里下载:http://nodejs.cn/download/,选择跟你电脑匹配的并进行安装,一路next下来就行,路径最好改成自己让自己舒服的,默认的路径可能会很让 ...
- sql语句中变量的写法
$sql = "update cat set num=num+1 where cat_id=$art[cat_id]"; $sql = "update ca ...