有规律字段拆分(2005的解决方案)
问题描述:
–有表tb, 如下:
id values
———– ———–
1 aa,bb
2 aaa,bbb,ccc
–欲按,分拆values列, 分拆后结果如下:
id value
———– ——–
1 aa
1 bb
2 aaa
2 bbb
2 ccc
–1. 旧的解决方法
Select TOP 8000
id = IDENTITY(int, 1, 1)
INTO #
FROM syscolumns a, syscolumns b
Select
A.id,
SUBSTRING(A.[values], B.id, CHARINDEX(‘,’, A.[values] + ‘,’, B.id) – B.id)
FROM tb A, # B
Where SUBSTRING(‘,’ + A.[values], B.id, 1) = ‘,’
Drop TABLE #
– 2. 在SQL Server2005中使用的方法如下:
– 示例数据
DECLARE @t TABLE(id int, [values] varchar(100))
Insert @t Select 1, ‘aa,bb’
UNION ALL Select 2, ‘aaa,bbb,ccc’
– 查询处理
Select
A.id, B.value
FROM(
Select id, [values] = CONVERT(xml,
’<root><v>’ + REPLACE([values], ‘,’, ‘</v><v>’) + ‘</v></root>’)
FROM @t
)A
OUTER APPLY(
Select value = N.v.value(‘.’, ‘varchar(100)’)
FROM A.[values].nodes(‘/root/v’) N(v)
)B
/*–结果
id value
———– ——–
1 aa
1 bb
2 aaa
2 bbb
2 ccc
(5 行受影响)
–*/
转载于:https://www.cnblogs.com/Gaojier/archive/2010/04/08/2783577.html
有规律字段拆分(2005的解决方案)相关推荐
- oracle 表字段拆分,oracle 字段拆分
场景:Oracle 字段拆分有关问题 Oracle 字段拆分问题 我现在有一个字段是存:1,2,3的,而它对应另一张值集表中.eg; 课程人员表 id name Course 1 ...
- MyBatis实体属性与表的字段不对应的解决方案
MyBatis实体属性与表的字段不对应的解决方案 参考文章: (1)MyBatis实体属性与表的字段不对应的解决方案 (2)https://www.cnblogs.com/EasonJim/p/765 ...
- count 多个字段_一句话实现字段拆分成多行
把表中某字段根据分隔符拆分成N个字符串后,再用这N个字符串把这一行演变成N行. 用SQL来解决这个问题非常烦琐! SQL里没有提供集合对象,不能提供根据拆分后的字符串集合把一行变成多行的操作.解决这个 ...
- oracle拆分字段为多行,一句话实现字段拆分成多行
把表中某字段根据分隔符拆分成N个字符串后,再用这N个字符串把这一行演变成N行. 用SQL来解决这个问题非常烦琐! SQL里没有提供集合对象,不能提供根据拆分后的字符串集合把一行变成多行的操作.解决这个 ...
- CodeArt WSS3.0(MOSS)字段编辑权限控制解决方案(v1.0)
Windows SharePint Service 3.0(或MOSS)默认不支持字段级的权限.而在项目的实施过程中,客户经常会提出这个需求. 解决方案有两种: 1)开发自定义的字段,在字段上附加控制 ...
- kettle——入门操作-行列转换(行转列,字段拆分)
1.Row Normaliser,将一行多列数据转换为多行一列数据. 输入数据流: 计算器配置如下: 与计算器相连接的excel输出如下: Row Normaliser,设置如下, 与Row Norm ...
- Solr部分更新MultiValued的Date日期字段时报错及解决方案:Invalid Date String:‘Mon Sep 14 01:48:38 CST 2015‘
Solr部分更新MultiValued的Date日期字段时报错及解决方案:Invalid Date String:'Mon Sep 14 01:48:38 CST 2015' 参考文章: (1)Sol ...
- 对excel表格按照某个字段拆分
#文件按照"时段"字段拆分 import pandas as pd # raw,可使字符串内(除字符串最后一位是\的情况)所有的转义符都失效,也可使用/来替代\ rdir_inpu ...
- sql关键字和字段冲突时的解决方案
sql关键字和字段冲突时的解决方案 sql里面字段名和关键字冲突时,使用""把关键字引起来,sql就可以执行. eg: select a.by from a // × select ...
最新文章
- qt打开数据库mysql数据库文件怎么打开_qt打开数据库mysql数据库文件
- android流量控制的实现,Android系统中P2P应用数据包捕获及流量控制研究
- 【Maven实战】之基础知识点
- java实现转账功能_如何利用Java代码模拟银行转账这一功能?
- java乱码怎么解决_如何解决java乱码
- 深度学习基础知识介绍
- fortran 读整行_我整周读过的最有趣的东西
- php过去文件夹总数,用php获取文件夹内文件的数量
- 数据库——mysql如何获取当前时间---https://www.cnblogs.com/Chenshuai7/p/5136469.html
- Centos6.5 x86_64系统安装kvm虚拟机—基础篇
- matlab中如何去掉多行注释_matlab注释多行的方法
- 北京市朝阳区 办理 驾驶证期满换证 自助体检 的流程
- 【分享】写论文超好用的一些工具
- 巧记单词:odd和even
- js限制input的输入字符的长度,区分中英文
- [samtools] 文本查看语法,浏览SNP/INDEL位点
- AJAX之封装+跨域
- u8出现向服务器传输错误_分享,HTTP协议错误代码大全
- 教你制作GIF表情包,逐帧动画制作
- LiveGBS流媒体平台GB/T28181功能-安防监控录像服务端集中存储云上录像存储云端录像回看下载
热门文章
- 计算机网络——数据帧和数据包的区别
- Keras---text.Tokenizer:文本与序列预处理
- 百面机器学习第一章——特征工程(基本是百面机器学习书的内容)
- Python3操作mysql操作类
- 图像处理之积分图应用二(快速边缘保留滤波算法)
- NDK编译c包含C++头文件时,出现 error: unknown type name 'class' 的解决方法
- 算法竞赛中的随机数产生和断言
- [笔记]前端 - 下拉菜单的实现
- 有关编译嵌入式android的swap空间不够导致的编译错误和解决办法
- nginx 访问图片404_Nginx系列:安全下载模块