将字符串, ;分隔为表进行处理
来源:互联网 发布:tcp与udp端口号范围 编辑:程序博客网 时间:2024/04/30 12:36
if OBJECT_ID('tempdb..#tb') is not null
drop table #tb;
declare @comText nvarchar(4000);
create table #tb(transportNo varchar(20),billno varchar(20));
set @comText='150830001001,1;1508250101,1;1508290024,3';
set nocount on;
declare @semicolonlast int,@semicolonCurrent int;
declare @singleCmdText nvarchar(100);
declare @transportNo nvarchar(20);
declare @commalast int,@commaCurrent int;
declare @lastCmdText nvarchar(100);
declare @billno nvarchar(20),@status char(1);
set @semicolonlast=0;
while 1=1
begin
set @semicolonCurrent=CHARINDEX(';',@comText,@semicolonlast);
if @semicolonCurrent>0
set @singleCmdText=SUBSTRING(@comText,@semicolonlast,@semicolonCurrent-@semicolonlast);
else
set @singleCmdText=SUBSTRING(@comText,@semicolonlast,LEN(@comText)-@semicolonlast+1);
print @singleCmdText;
set @semicolonlast=@semicolonCurrent+1;
set @commaCurrent=0;
set @commaCurrent=CHARINDEX(',',@singleCmdText,0);
set @transportNo=SUBSTRING(@singleCmdText,0 ,@commaCurrent);
set @billno=SUBSTRING(@singleCmdText,@commaCurrent+1,LEN(@singleCmdText)-@commaCurrent);
insert #tb(transportNo,billno)values(@transportNo,@billno);
if @semicolonCurrent=0
break;
end
select * from #tb;
drop table #tb;
declare @comText nvarchar(4000);
create table #tb(transportNo varchar(20),billno varchar(20));
set @comText='150830001001,1;1508250101,1;1508290024,3';
set nocount on;
declare @semicolonlast int,@semicolonCurrent int;
declare @singleCmdText nvarchar(100);
declare @transportNo nvarchar(20);
declare @commalast int,@commaCurrent int;
declare @lastCmdText nvarchar(100);
declare @billno nvarchar(20),@status char(1);
set @semicolonlast=0;
while 1=1
begin
set @semicolonCurrent=CHARINDEX(';',@comText,@semicolonlast);
if @semicolonCurrent>0
set @singleCmdText=SUBSTRING(@comText,@semicolonlast,@semicolonCurrent-@semicolonlast);
else
set @singleCmdText=SUBSTRING(@comText,@semicolonlast,LEN(@comText)-@semicolonlast+1);
print @singleCmdText;
set @semicolonlast=@semicolonCurrent+1;
set @commaCurrent=0;
set @commaCurrent=CHARINDEX(',',@singleCmdText,0);
set @transportNo=SUBSTRING(@singleCmdText,0 ,@commaCurrent);
set @billno=SUBSTRING(@singleCmdText,@commaCurrent+1,LEN(@singleCmdText)-@commaCurrent);
insert #tb(transportNo,billno)values(@transportNo,@billno);
if @semicolonCurrent=0
break;
end
select * from #tb;
0 0
- 将字符串, ;分隔为表进行处理
- Oracle将以逗号分隔的数字字符串根据字典表转换为中文字符串
- 将一个制定分隔符的字符串进行分割
- 将指定分隔符分隔的字符串转换为字符串列表
- 将逗号分隔的字符串转换为List以及List转逗号分隔的字符串
- sql将列转换为以逗号分隔的字符串
- 将长字符串以逗号分隔为4个一组
- 将逗号分隔的字符串转换为List
- 将图片文件转化为字节数组字符串,并对其进行Base64编码处理
- awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
- java版的字符串分隔,将字符串分隔为每8个一组,并且不够的补0,输出
- 将字符串作为php代码进行处理
- oracle 将字符串分隔方法
- MYSQL创建一个 “将一个字符串以某个分隔符分隔得到多个值” 的函数,并为多个值加上序号
- sql将逗号分隔的字符串转为表Table
- C语言处理分隔字符串
- 将字符串p,以token字符进行分隔,结果保存到fields 数组中
- split()方法是将指定字符串按某指定的分隔符进行拆分
- Spring - 【日常问题】
- JAVA集合框架之Map接口实现类
- 购物车源码
- awk 用法
- JavaScript 学习—— js获取行间样式和非行间样式
- 将字符串, ;分隔为表进行处理
- 一些智力题解析
- seaweedfs的使用和修改
- 自定义控件的自定义属性的详细说明
- 2015-12-28 FFC
- Chapter1
- Mysql优化器源码
- 【JavaScript.6】阶段概念总结之HTML+CSS+JavaScript+xml+xpath+Json+Ajax
- 使用Fiddler捕获java的网络通信数据包