492953BI -2284424
492953BI -2014941
492953BI -1916038
492953BI -1908036
我需要将第一列(ID)分成两列。(即,在第一列中有数字,在第二列中有 BI。)我正在努力在 SQL Server 上执行此操作。我也是 SQL 新手,所以要努力解决老问题,谢谢
492953BI -2284424
492953BI -2014941
492953BI -1916038
492953BI -1908036
我需要将第一列(ID)分成两列。(即,在第一列中有数字,在第二列中有 BI。)我正在努力在 SQL Server 上执行此操作。我也是 SQL 新手,所以要努力解决老问题,谢谢
select substring(col1, 1, 6) as new_col1,
substring(col1, 7, 2) as new_col2
from your_table
使用Left()
和Right()
功能:
--If the number part is always 6 digits
Select left(yourColumn,6) Col1, right(yourColumn,2) Col2
From yourTable
--For any number of front digits (bit more generic)
Select left(yourCol, charIndex('B',yourCol)-1) Col1,
right(yourCol, len(yourCol) - charIndex('B',yourCol)+ 1) Col2
From yourTable
select substring(ID, 1, 6) as ID,
substring(ID, 7, 2) as SubID from Table
这可能会产生两列 ID 和 SubID 的结果。
谢谢