我在下面的表TEST中有DATA列
00001900-01-01Aseopenigaccount-RF RF-ADIT
00341900-02-01Aseopenigaccount-RASS RASS-ADIT
00761900-03-01Adminopenigaccount-RASS OPEN-System
我需要将DATA列的上方分为4列
Code Date Description ShortDesc
0000 1900-01-01 Aseopenigaccount-RF RF-ADIT
0034 1900-02-01 Aseopenigaccount-RASS RF-ADIT
0076 1900-03-01 Adminopenigaccount-RASS RF-ADIT
答案 0 :(得分:3)
@ at9063,欢迎来到社区。如评论所示,您应该在以后的问题中提供解决方案的样本。在数据集后面提供任何逻辑假设也将非常有帮助。
该解决方案基于您提供的示例数据。可以通过获取前4个字符和后10个字符来提取前两列。Description
列将从您的第15个字符开始,直到第一个空格。 ShortDescr
从第一个空格开始。
SELECT LEFT(my_data,4) AS My_Code,
SUBSTRING(TRIM(my_data),5,10) AS my_date,
SUBSTRING(TRIM(my_data),15,CHARINDEX(' ',my_data)-15) AS My_Description,
SUBSTRING(TRIM(my_data),CHARINDEX(' ',my_data),LEN(TRIM(my_data))+1-CHARINDEX(' ',my_data)) AS my_ShortDesc
FROM test