在SQL SERVER中根据某字段分隔符将记录分成多条记录
2024-08-29 03:01:41
XT_RSGL_KQSZ_LS表结构如下图:
CREATE TABLE XT_RSGL_KQSZ_LS(
KQFW VARCHAR(400)
)
其中KQFW字段以分割符 , 隔开
INSERT INTO XT_RSGL_KQSZ_LS SELECT 'AAA,BBBB,C' UNION SELECT '12,3'
实现的结果为
(number为前分隔符的下标值的后一位)
select
substring(a.kqfw , b.number , charindex(',',a.kqfw+',',b.number)-b.number)as result,
a.* from XT_RSGL_KQSZ_LS a join master..spt_values b on b.type='P'
where b.number=charindex(',',','+a.kqfw,b.number)
思路:就是找到前、后分隔符在KQFW字段的下标值
利用一个自然数自增的表(sqlserver自带的master..spt_values的number字段从0自增)
*charindex( expression1 , expression2 [ , start_location ] ) 对第三个参数比较陌生,就是从start_location开始对expression2进行匹配expression1
*substring(str, pos, len)
最新文章
- getAttribute、setAttribute、removeAttribute
- go环境import cycle not allowed问题处理
- 在Eclipse彻底删除一个项目
- AC自动机入门
- Android Studio 使用教程
- mamp pro
- wordpress修改固定链接及修改链接后链接提示404错误的解决办法
- Android 中如何使用动画
- 在Vim中查看文件编码
- c++策略模式
- Yii1.1框架实现PHP极光推送消息通知
- mysql的主从复制
- 第26月第2天 vim javacomplete
- python3+selenium入门02-操作火狐浏览器
- 2.C++中的bool类型,三目运算符,引用
- linux如何查看某个端口是否开放
- ES6学习笔记<;五>; Module的操作——import、export、as
- JDBC、ODBC、OLE DB、ADO、ADOMD区别与联系
- 学习MongoDB 二:MongoDB添加、删除、修改
- log4j 输出到 数据库
热门文章
- zip伪加密文件分析(进阶版)
- 使用dispatch_semaphore_t实现event的基本功能
- visual studio 的Error List 显示乱码
- CentOS7关闭防火墙方法
- CNC Fanuc 设备数据采集
- 简单MVC项目搭建--Java1.7+Eclipse luna + Maven 3.2.5 +spring 4.1.4
- YII rules常见规则
- IIS 7.0 部署MVC
- 【学】React的学习之旅4-添加事件(onChange)
- VS2010中App_Code文件夹的问题