I am trying to write a sql statement to update a column of a table from another tables column. But I only want to update the column if its empty.
For example:
UPDATE
Table
SET
Table.col1 = other_table.col1,
FROM
Table
INNER JOIN
other_table
ON
Table.id = other_table.id
but I want to set the Table.col1 value only if that value is empty. Whats the best way to do this?
Define empty?
But really all you need is a WHERE clause like
UPDATE Table
SET Table.col1 = other_table.col1,
FROM Table
INNER JOIN
other_table ON Table.id = other_table.id
WHERE Table.col IS NULL --or whatever your empty condition is
In Postgre you may need a different syntax (How to do an update + join in PostgreSQL?):
UPDATE Table
SET Table.col1 = other_table.col1,
FROM Table
,other_table
WHERE Table.id = other_table.id
AND Table.col IS NULL --or whatever your empty condition is
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With