如何在sql server中将字符串拆分为多个 [英] How to split string into multiple in sql server

查看:61
本文介绍了如何在sql server中将字符串拆分为多个的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个如下所示的列数据,

I'm Having a column data like below,

126-35-56-24

我希望结果是这样的,

select 126 as Id, 35 as Age, 56 as EmpId, 24 as Day

我只是尝试使用 substring 并且我可以将字符串拆分为 126 和 35-56-24,但是我无法得到我想要的结果.

I just try using substring and I can Able to split the string into 126 and 35-56-24, but I can't get the result I Want.

请帮我搞定这个.提前致谢...

Please help me to get this. Thanks in Advance...

推荐答案

使用下面的脚本,它将根据字符索引'-'分割字符串.

Use the below script ,which will split the strings based on the char index of '-'.

DECLARE @data varchar(50)='126-35-56-24'

SELECT 'SELECT '+ SUBSTRING(@data,1,CHARINDEX('-', @data)-1) + ' as Id, '
   +SUBSTRING(@data,CHARINDEX('-', @data)+1,CHARINDEX('-', @data,CHARINDEX('-',@data) + 1) -CHARINDEX('-', @data)-1)+ ' as Age, '
   +SUBSTRING(@data,CHARINDEX('-', @data,CHARINDEX('-',@data)+1)+1,CHARINDEX('-', @data,CHARINDEX('-', @data,CHARINDEX('-',@data)+1)+1) -CHARINDEX('-', @data,CHARINDEX('-',@data)+1)-1)+' as EmpId, '
   +SUBSTRING(@data,CHARINDEX('-', @data,CHARINDEX('-', @data,CHARINDEX('-',@data)+1)+1)+1,LEN(@data)-CHARINDEX('-', @data,CHARINDEX('-', @data,CHARINDEX('-',@data)+1)+1)+1) +' as Day'

示例输出:

这篇关于如何在sql server中将字符串拆分为多个的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆