MySQL (InnoDB) UPDATE SET performance with value in WHERE AND clause
This very much depends on the data present in the table at the time of the UPDATE.  

If, for instance, the table has 1,000,000 rows where value1 = 'foo' and only 1 row where value1 &lt;&gt; 'foo' then UPDATE table1 SET value1='foo' WHERE value2='bar' AND value1 &lt;&gt; 'foo'; will only actually update a single row.  Whereas  UPDATE table1 SET value1='foo' WHERE value2='bar'; would update 1,000,001 rows.  

If you are talking about a table with only two rows, the difference is entirely negligible.

If you were using SQL Server and had a filtered index like WHERE value2 = 'bar' AND value1 &lt;&gt; 'foo' then UPDATE table1 SET value1='foo' WHERE value2='bar' AND value1 &lt;&gt; 'foo'; would most likely use the index instead of scanning the entire table.