SET U.AColumn = OtherTable.AnOtherColumn
FROM TableToUpdate AS U
INNER JOIN OtherTable On
U.YetAnotherColumn = OtherTable.YetAnotherColumn
INNER JOIN ATotallyDifferentTable On
OtherTable.NutherColumn = ATotallyDifferentTable.NutherColumn
WHERE ATotallyDifferentTable.SomeColumn NOT IN ('Yea', 'Nay', 'Dunno')
I find it a good habit to give the table that will be updated the alias name "U", to distinguish it from the other tables.
Basically you write the JOINS (INNER, LEFT OUTER, ...) and WHERE clause like you would for any SELECT statement. In the SET part, you can assign a literal value to the update column (like U.IsActive = 'N') , or any column from one of the JOINed tables (U.AColumn = OtherTable.AnOtherColumn).