SQL Server,每10个字符分割一列的值

黑书之星

需要每10个字符拆分列引用值,并为每个行ID显示它

我有这样的数据

ID       Reference
1        405123  ap41502   ag067156
2        a450912   d109456
3        4a4122   g567412  ol09123  pl212671 et61789
4        6t3450   41234a3   01a459014

所需结果:

ID  Reference
1   405123  ap
1   41502   ag
1   067156
2   a450912   
2   d109456
3   4a4122   g
3   567412  ol
3   09123  pl2
3   12671 et61
3   789
4   6t3450   4
4   1234a3   0
4   1a459014
松鼠

您可以使用数字/理货表格。将您的表交叉连接到数字表

select  *, substring(t.Reference, (n.n * 10) + 1, 10)
from    yourtable t
    cross join numbers n
where   n.n >= 0
and     n.n < ceiling(len(t.Reference) / 10.0)
order by ID, n.n

注意:理货表应包含0行

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在 SQL 中,如何合并 10 个字符长的 3 列的第一个值

在 t-sql 中编写一个查询,比较同一列的 2 个字符

SQL Server:获取第一列中的最后4个字符并获取第二列中单词的第一个字母但忽略非字母

如何在SQL Server列的两个字符串之间选择一个字符串?

使用Microsoft SQL Server获得一列的10个最高升序值

为sql更新中的所有列值连接一个字符串

Oracle SQL:如何将列标题的第一个字符而不是值大写?

我有一个问题,从与 sql 中的其他列值不匹配的列中选择一个字符串

使用 SQL Server 从每个表和每一列中获取不同的值

SQL,根据值连接一个字符和前导 0

替换SQL Server 2008中的最后一个字符

从 SQL Server 中的多行连接一个字符串

如何从SQL Server 2008开始查找第一个字符

Sql server 分离一个字符串并透视结果

如何使用 SQL 替换特定列中每一行的前两个字符?

SQL对列的第一个字符排序

替换 SQL 中 STRING 列的最后一个字符

在SQL中找出一个字符串位置(列)

SQL查询在每一列中返回相同的值

SQL Server QUOTENAME命令的替代形式,没有128个字符的限制。如何在括号之间放置一个字符串

从SQL Server中的另一个字符串获取仅字符字符串

用%SQL Server替换第一个或最后一个字符为*

如何使用EF和SQL Server过滤列的第一个字符在某个范围内的行?

SQL SERVER,使用 patIndex 查找另一个字符位置左侧的字符位置

如何在SQL Server中的字符串中获取最后一个字符

SQL Server:如何根据下一个字符从字符串替换

在sql中拆分字符串,并将每个分隔的值添加到表的每一列中

如何在SQL Server中删除复杂子查询select语句的最后一个字符?

SQL Server:需要在最后两个字符之前添加一个点