字符串开始进入新列

Start of String into new column

我终于完成了将这个巨大的文本文件导入 SSMS。由于格式是 Ragged Right,我不小心将两列合二为一。所以我添加了一个新的专栏,其中包含适当的 header。但是现在在我的专栏 def_nam 中,实际列值前面有 4 个字符不属于那里。

示例:

def_name                        rea
PLEA WUNSCH, JOHN ROGER         NULL
SFJS VILLARREAL, JACOB ANDERS   NULL
DISP TORRES, STEVEN             NULL
DISP ATKINSON, JAMES FRANKLIN   NULL
HEAR GODARZI, FOROUZAN          NULL
NTRL REYES, MANUEL JR           NULL
HEAR HANLON, THOMAS JOSEPH      NULL
HEAR HANLON, THOMAS JOSEPH      NULL
DISP WILSON, MELISSA WAYNETTE   NULL
HEAR PROSPER, TIMOTHY DANIEL    NULL

所以 Objective 如下:我想拆分此列中的字符串,获取第一个 space 之前的所有字符,并将该值插入到名为 [= 的新空列中13=]

因此我们将以此结束。

def_name                    rea
WUNSCH, JOHN ROGER          PLEA
VILLARREAL, JACOB ANDERS    SFJS
TORRES, STEVEN              DISP
ATKINSON, JAMES FRANKLIN    DISP
GODARZI, FOROUZAN           HEAR
REYES, MANUEL JR            NTRL
HANLON, THOMAS JOSEPH       HEAR
HANLON, THOMAS JOSEPH       HEAR
WILSON, MELISSA WAYNETTE    DISP
PROSPER, TIMOTHY DANIEL     HEAR

为这样的事情编写什么是最好的查询?考虑到我有超过 300 万行。

你或许可以这样做。

update YourTable
set rea = LEFT(def_name, 4)
    , def_name = stuff(def_name, 1, 5, '')