2016-09-16 76 views

回答

0
# CREATE TEMPORARY TABLE tmp_split (id SERIAL PRIMARY KEY, c0 VARCHAR(32), c1 VARCHAR(16), c2 VARCHAR(16)); 
CREATE TABLE 

# INSERT INTO tmp_split (c0) VALUES ('one-two'), ('three-four'); 
INSERT 0 2 

# SELECT * FROM tmp_split; 
id |  c0  | c1 | c2 
----+------------+----+---- 
    1 | one-two | | 
    2 | three-four | | 
(2 rows) 

# UPDATE tmp_split SET c1 = split_part(c0, '-', 1), c2 = split_part(c0, '-', 2); 
UPDATE 2 

# SELECT * FROM tmp_split; 
id |  c0  | c1 | c2 
----+------------+-------+------ 
    1 | one-two | one | two 
    2 | three-four | three | four 
(2 rows) 
0
update the_table 
    set col1 = split_part(column, '-', 1), 
     col2 = split_part(column, '-', 2)