SQLServer字符串批量拆分得方法

处理sql字符串切割,如(1,2;3,4切割成两行两列的数据)的存储过程 用于处理sql切割字符串,例如字符串1,2;3,4切割存入数据库为: 第一列 1 2 第二列 3 4 如果表中有三列,直接录入三列的字符串即可,如果只要录入特定的某些字段值,设置其他字段为默认的数值即可。 该存储过程直接执行便可,如有需要更改字符,也可以按照注释进行修改。 立即下载

其实拆分和批量拆分的方法是一样的,所谓批量就是用out apply来调用单个拆分函数。

 /*
SQLServer字符串拆分函数,by jinjazz

--原始数据
id          names
----------- --------------------
1           jinjazz,blog,csdn
2           sql,ms

--生成的数据
id          rn          name
----------- ----------- ----------
1           1           jinjazz
1           2           blog
1           3           csdn
2           1           sql
2           2           ms


*/

setnocounton
usetempdb
go
if (object_id ('f_test' ) isnotnull )
     dropfunctionf_test
go
createfunctionf_test (@avarchar (max ))
returns @ttable (rnint , vvarchar (max ))
as
begin
    insertinto @t
    select b. *from (
     selectconvert (xml , '<v>' + replace (@a , ',' , '</v><v>' )+ '</v>' ) asf )a
     outerapply
    (
         SELECTrn = row_number ()over (orderbygetdate ()),t . c . value ('.' , 'varchar(max)' ) ASf
                  FROMa . f . nodes ('//v' ) ASt (c )
     )b   
    return
end
go


declare @ttable (idint , namesvarchar (20 ))
insertinto @tselect1 , 'jinjazz,blog,csdn'
insertinto @tselect2 , 'sql,ms'

select*from @t
selecta . id , rn , b. vasnamefrom @taouterapplydbo . f_test (a . names ) b

setnocountoff


本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/jinjazz/archive/2009/08/27/4490912.aspx

SQL 语句 将一个表中用特殊字符分割的字段转换成多行数据.docx 找了网上很多资料,都没有详细的做法有的还很复杂,自己写了个分割函数,通过直接查询就能分割多行,很方便。 立即下载

相关推荐

sqlserver2008 拆分字符串

–说明:例如,将下列数据 id id_value —————– 1 ‘aa,bb’ 2 ‘aa,bb,cc’ 3 ‘aaa,bbb,ccc’ –转换成以下的格式 id id_value —————– 1 ‘aa’ 1 ‘bb’ 2 ‘aa’ 2 ‘bb’ 2 ‘cc’ 3 ‘aaa’ 3 ‘bbb’ 3 ‘ccc’ –代码——————————————-GO 代码如下:create table ta ( id int, id_value varchar(30) ) insert into ta select 1,’aa,bb’ union all select 2,’aa,bb,cc’ uni

sqlserver存储过程字符串拆分处理

将逗号分隔的字符串,每个都单独打印出来 declare @xt varchar(max) declare @channel varchar(32) set @xt='2437fc26c8ad442e9b48aea4f90b91b0,29c17ae6463d4072a13c14b2bbdcd589,2a7ea11fe4b14c47894714d908b403ca,2d184c8dda7d447c8e6d2141ac43552a,2f50c4c592314701a2df92227a19a9cf,2f958

u011511086的专栏 1825

SQL Server实现将特定字符串拆分并进行插入操作的方法

本文实例讲述了SQL Server实现将特定字符串拆分并进行插入操作的方法。分享给大家供大家参考,具体如下: --循环执行添加操作 declare @idx as int While Len(@UserList) > 0 Begin Set @idx = Charindex(',', @UserList); --只有一条数据 If @idx = 0 and Len(@UserList) > 0 Begin Insert Into BIS_MsgCenterInfo(ID,MsgID,UserID,[State])Values(Newid(),@ID,@UserList,0); B

SQLSERVER 字符串分割

情景描述: 项目中有个地方需要向数据库中插入几条数据,由此引发的一系列问题~ 项目要求: 1、使用存储过程 2、代码和数据库相关业务分离 以下为几种方案: 1、最初的方案是存储过程中插入一条数据,代码中循环调用存储过程进行插入(被PASS,原因是多次调用影响效率) 2、代码中拼接成一条SQL语句,然后传给存储过程,执行一次操作即可(被PASS,要实现业务分离) 3、通过文件批量插入...

半雨微凉 2万+

SqlServer下通过XML拆分字符串的方法

SqlServer中通过XML拆分字符串,需要的朋友可以参考下。

Cloudflare SaaS 优选IP实战:提升大陆访问速度的配置指南

本文详细介绍了如何通过Cloudflare SaaS优选IP提升中国大陆用户访问速度的配置指南。从基础环境准备到IP筛选方法,再到完整配置流程和效果验证,帮助用户突破免费套餐限制,精准优化网络线路,特别适合跨境电商和面向中国大陆用户的网站优化。

weixin_29231027的博客 683

SQLServer 简单数据拆分

--1. 旧的解决方法(sql server 2000) create table tb(id int,value varchar(30)) insert into tb values(1,'aa,bb') insert into tb values(2,'aaa,bbb,ccc') go --方法1.使用临时表完成 SELECT TOP 8000 id = IDENTIT...

weixin_30672019的博客 325

Unity工业数据可视化:基于ModbusTCP的实时数据通信实战

本文详细介绍了在Unity中实现工业数据可视化的核心方法,重点讲解了基于ModbusTCP协议与PLC等工业设备进行实时数据通信的实战流程。内容涵盖NModbus库的集成、Modbus Slave模拟器的使用、TCP连接的建立与多线程安全通信、数据读写与解析,以及如何将实时数据驱动3D场景,为构建工业数字孪生与监控系统提供完整解决方案。

ol7890123的博客 553

* SQLServer字符串批量拆分函数

/******************************************************  * SQLServer字符串批量拆分函数 --原始数据  id          names  ----------- --------------------  1           ljy,zwg,cym  2           czg,zy --生成的数据

NET情歌专栏 828

【Latex】【附安装文件】Miktex和TexStudio的安装与配置

这代表“构建并运行”,一般来说,我们只需要点这个按钮来运行Latex代码。保存一下代码文件,再运行一次,PDF文件会出现在与代码文件相同的文件夹下。安装完成后,你可能会跳转到一个页面中,你看到这个页面就意味着安装成功了。其实不需要你敲,你只要将下面的代码复制粘贴到你刚刚的文件中即可。成功安装MikTex后,我们需要进行更新,减少后续使用的麻烦。如果懂得将安装路径设置在你想要的盘中,你可以自己设置。双击上文的.exe文件后,你会看到如下画面。如果不懂,为避免不必要的麻烦,请直接点击“

未来就在脚下。 1万+

【v4l2】在Android SDK中交叉编译v4l2-ctl

为调试Android设备中camera的相关功能,需要引入v4l2-ctl工具。由于厂商提供的Android SDK源码中未集成v4l2-utils(包含v4l2-ctl以及其它组件的工具包),故需要下载v4l2-utils源码,并在Android SDK中交叉编译生成v4l2-ctl可执行文件。本文讲述其过程步骤。

rentong123的博客 1322
上一篇: SQLServer获取每组前10%的数据
下一篇: insert into 后获得自动插入的id(select @@identity)
DICOMV3PACS
博客等级 码龄17年 161粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值