我必须在我们的系统中导入一些数据,并且一个特定的列 [FiscalInfo]不幸地存在两者 FiscalDepartment和FiscalNumber信息。我想将其拆分为两个列: [财政部门]和[财政部门]
这是一个示例
[FiscalInfo]
F.O 885621791 F.D
F.O F.D
F.O 335064214 F.D KALOST
F.O F.D ASRIT
从你所看到的,我并不总是有关于FO和FD的信息,但是我总是在列(FO和FD)中有它们的缩写。< / p>
有没有办法拆分信息?
提前Thanx!
答案 0 :(得分:1)
这些细节非常硬编码(假设该字段始终以'F.O'等开头),但希望说明这一点......
WITH cte as
( select 'F.O F.D' as ss
UNION select 'F.O 885621791 F.D'
UNION select 'F.O 335064214 F.D KALOST'
UNION select 'F.O F.D ASRIT '
)
select
substring(ss, 5, charindex('F.D',ss)-5) as FO,
substring(ss, charindex('F.D',ss)+4, 8000) as FD
from cte