title: Update joined table via SQLAlchemy ORM using session.query
body: <p>Working with MySQL, I'd like to generate this SQL:</p>
  
  <pre><code>UPDATE tableA
  INNER JOIN tableB
  ON tableA.some_id = tableB.some_id
  SET tableA.foo = 1
  WHERE tableB.bar IN ('baz','baaz')
  </code></pre>
  
  <p>This is my SQLAlchemy query:</p>
  
  <pre><code>session.query(tableA).join(tableB, tableA.some_id == tableB.some_id) \
                       .filter(tableB.bar.in_(['baz','baaz']))\
                       .update({tableA.foo: 1})
  </code></pre>
  
  <p>But the SQL it generates is this (a multi-table update, with no join condition, which is not what I want):</p>
  
  <pre><code>UPDATE tableA, tableB 
  SET tableA.foo = 1
  WHERE tableB.bar IN ('baz','baaz')
  </code></pre>
  
  <p>I've tried changing the .join into another .filter to specify the join condition, that didn't solve the problem.
  How do I force this simple update statement to do the proper join?</p>