There is a logical difference between the two queries. If there is no match between A table and B table; with query 2 the old values for colunms 1 and 2 remains the same as before. With Query 2 (if there is no match) the values are replaced with a NULL values.
Query 2 also have the risk for failure if there are more than 1 match between table A and B.