2017-02-10 42 views
-1

我被困在如何将数据分隔到新列中。如何将一列中的数据分隔到新列中

例子:

Column_A 
q201,r331,q402,r0[213453] 

我需要得到内部支架的价值,213453

从我搜索信息后得到的,我需要使用

substring and charindex 

,但这种情况下,这种情况就像2倍分隔符。任何想法如何做到这一点?

感谢

+1

你必须用charindex搜索两个分隔符,然后使用子串 –

回答

1
SELECT SUBSTRING(Column_A, 
       CHARINDEX('[', Column_A) + 1, 
       CHARINDEX(']', Column_A) - CHARINDEX('[', Column_A) - 1) 
FROM yourTable 

这个回答假设你只有一个括号的数量,或者如果不止一个,那么你会接受以第一个。如果您的实际数据不同,请更新您的问题。

+0

你好,我得到错误信息'转换nvarchar值'my_value'转换为数据类型int时转换失败。我的实际数据格式与我的问题相同。 –

+0

我的查询应该工作AFAIK。也许你复制了它/错误地解释了错误,从而导致了错误。也许用你真正想要做的事来更新你的问题。 –

+0

您好Tim,当我查看我的数据时,某些数据是像[213412easdaqwr]这样的nvarchar类型,是否会影响这种情况? –

相关问题