2012-11-21 34 views
0

我有一个带有名称字段的表,其中包含名称和姓氏,并由空格分隔。使用现有的字段和函数的更新语句

下面是简单的测试数据我的工作:

DROP TABLE IF EXISTS students; 
CREATE TABLE students (
name text, 
major text, 
gpa float 
); 
INSERT INTO students 
VALUES ('John Smith', 'CS', 3.7), 
('Sara Li', 'History', 3.4), 
('Mike Adams', NULL, 2.6); 

我的目标是更新表,这样我就可以使用split_part功能在PostgreSQL的名字和姓氏放入一个新的字段fname和lname,使用更新语句,并由名称中的空格分隔。

但是,我正在努力获得甚至要运行的语句之一。

UPDATE students SET first_name = split_part(name, ' '); 

我奋力获取查询表格中的每一行做到这一点,我也不能确定如何处理最后的名字,因为我需要获得姓氏这是空间之后。

我已经玩过子查询,但仍然没有成功,请让我知道,如果你能帮助!

回答

1

尝试

UPDATE students SET first_name = split_part(name, ' ', 1); 
相关问题