update t1
set t1.current_location =
CASE
WHEN SUBQUERY.status = 0 THEN 'Deployed'
WHEN SUBQUERY.status = 1 THEN 'Retrieved'
WHEN SUBQUERY.status = 2 THEN 'Lost'
ELSE t1.current_location
END
from (
select t3.serial_number, t2.status
from t2 inner join t3
on t2.some_id = t3.some_id
) as SUBQUERY
where SUBQUERY.serial_number = t1.serial_number;
update t1
set current_location =
case t2.status
when 0 then 'Deployed'
when 1 then 'Retrieved'
when 2 then 'Lost'
end
from t2 inner join t3
on t2.some_id = t3.some_id
where t3.serial_number = t1.serial_number;
UPDATE table_name
SET column1 = value1,
column2 = value2,
...
WHERE condition
RETURNING * | output_expression AS output_name;
Code language: SQL (Structured Query Language) (sql)