0

我必须在我们的系统中导入一些数据,并且有一个特定的列[FiscalInfo] 不幸地包含FiscalDepartment和 FiscalNumber 信息。我想把它分成列:[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)。

有没有办法拆分信息?

提前谢谢!

4

1 回答 1

1

它对这些细节非常硬编码(假设该字段总是以'FO'等开头),但希望能说明这一点......

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
于 2013-03-08T10:17:06.150 回答