db_update() with joins
db_update() doesn't implement any interfaces that have join()/innerJoin()/etc. methods so I think you're stuck with using db_query() and writing the query string out manually.

$sql = "
  UPDATE field_data_field_TEST as ft 
  left join node as n on ft.entity_id = n.nid
  set n.type = :type1
  where n.type = :type2";

$args = array(':type1' =&gt; 'test', ':type2' =&gt; 'foo');
db_query($sql, $args);