0
492953BI    -2284424
492953BI    -2014941
492953BI    -1916038
492953BI    -1908036

我需要将第一列(ID)分成两列。(即,在第一列中有数字,在第二列中有 BI。)我正在努力在 SQL Server 上执行此操作。我也是 SQL 新手,所以要努力解决老问题,谢谢

4

3 回答 3

0
select substring(col1, 1, 6) as new_col1, 
       substring(col1, 7, 2) as new_col2
from your_table
于 2013-10-10T08:17:16.940 回答
0

使用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
于 2013-10-10T08:18:05.400 回答
0
select substring(ID, 1, 6) as ID, 
   substring(ID, 7, 2) as SubID from Table

这可能会产生两列 ID 和 SubID 的结果。

谢谢

于 2013-10-10T09:01:08.920 回答