MS SQL 拆分逗号并检索字段
发表于:2025-11-16 作者:千家信息网编辑
千家信息网最后更新 2025年11月16日,create table curtest (djbh varchar(20) primary key,sales varchar(20))goinsert curtestselect 'A1','01
千家信息网最后更新 2025年11月16日MS SQL 拆分逗号并检索字段
create table curtest (djbh varchar(20) primary key,sales varchar(20))goinsert curtestselect 'A1','01,02,03' union all --创建表并插入记录select 'A2','01,02' union allselect 'A3','02,03' union allselect 'A4','02,03,04' godeclare cur_test cursor for select * from curtest --声明游标declare @djbh varchar(20) --定义变量单据编号declare @sales varchar(20) --定义变量销售declare @star int,@len int,@dhwz int -- 定义变量开始,长度,逗号位置open cur_test --打开游标fetch next from cur_test into @djbh,@sales --获取第一条记录while(@@FETCH_STATUS=0) --根据返回状态确认执行结果。0代表成功beginset @star=1 --对开始位置赋值1set @dhwz=CHARINDEX(',',@sales,@star) --获取第一个逗号位置set @len=LEN(@sales) --获取字段长度while(@star<=@LEN) --循环条件,开始位置小于字段长度begin select @djbh,substring(@sales,@star,@dhwz-@star) --获取逗号前字符 set @star=@dhwz+1 --每次循环,将上次逗号位置+1作为下次开始位置set @dhwz=CHARINDEX(',',@sales,@star) --以上次逗号位置+1作为本次开始位置,检索下一个逗号位置if(@dhwz=0) --判断,当检索不到逗号(即返回值为0,并且已到达最后一个逗号)beginselect @djbh,SUBSTRING(@sales,@star,(@len-@star)+1) --最后一个逗号后字符,以上一次逗号位置+1开始,长度为字段总长度减开始位置+1break --跳出循环 end endfetch next from cur_test into @djbh,@sales --读取下一条记录,并重新开始执行循环(拆分并检索逗号分割字符)endclose cur_test
逗号
位置
长度
循环
字段
检索
变量
字符
游标
成功
代表
单据
条件
状态
结果
上一
销售
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
魔兽世界酒店连不上服务器
数字图书馆 数据库系统
福建春坤网络技术
网页调用mysql数据库
近期网络安全手抄报图片
服务器故障启动第二台
搭建禅道赋予远程数据库权限
ajax 循环回传数据库
满洲里网络安全活动
网络安全门控制
达梦数据库体系结构由什么组成
返客网络技术有限公司
网络安全宣传周新闻搞
自考电子商务网络技术
积木编程软件开发
网络安全为主题手抄报
先进工业控制网络技术
上海软件开发科技公司
win服务器系统价格
山西正规软件开发服务有哪些
高淳区国际软件开发
java软件开发怎么做
广饶县网络安全宣传周
qq服务器类型是什么
意识形态和网络安全的关系
高校网络安全文献
外星科技互联网小说
jdbc连接数据库5个步骤
纽卡斯尔网络安全好毕业吗
系统管理员删除数据库