updating column with value from another column in postgres table

Viewed 6416

I have a postgres table which has 2 columns

username and email I have hundreds of rows in the table such as

username | email
username1 | test@abc.com
username2 | test@abc.com
username3 | test@abc.com
username4 | test@abc.com

The way this was setup all emails are the same, and now I need to make them unique. I am trying to update the email column to be like this

username | email
username1 | username1_test@abc.com
username2 | username2_test@abc.com
username3 | username3_test@abc.com
username4 | username4_test@abc.com

basically copy over the value from the username column and add it to the email column. I tried using the coalesce function but that will replace the value completely and not update it.

Please can you help me understand how to achieve this.

Thanks

1 Answers

An update with basic concatenation should work here:

UPDATE yourTable
SET email = username || '_' || email;
Related