将选择值插入新属性POSTGRESQL

时间:2016-02-24 14:39:15

标签: sql postgresql

我有一些数据如下:

full_name    

R Davies
N Powell
Harry S
A J Fulham

我想从第一个空格中拆分名称,然后将值插入到forename和surname中。所以它看起来如下:

forename        surname

R               Davies
N               Powell
Harry           S
A               J Fulham

我编写的代码只是创建新列并删除旧列。我已设法创建一个将查看forename但我无法插入的select语句。 所以我需要代码将两个值都插入到新列中并获取姓氏。

ALTER TABLE names add forename varchar(100)
ALTER TABLE names add surname varchar(100)

UPDATE names
INSERT INTO names(forename)
SELECT split_part(full_name, ' ', 1) FROM names

ALTER TABLE names DROP COLUMN full_name;

1 个答案:

答案 0 :(得分:1)

需要UPDATE

UPDATE names
   set forename = split_part(full_name, ' ', 1), 
       surname = split_part(full_name, ' ', 2)

insert仅用于创建(插入)新的