title: What's the difference between "using" and "on" in table joins in MySQL?
body: <p>Is this</p>
  
  <pre><code>... T1 join T2 using(ID) where T2.VALUE=42 ...
  </code></pre>
  
  <p>the same as</p>
  
  <pre><code>... T1 join T2 on(T1.ID=T2.ID) where T2.VALUE=42 ...
  </code></pre>
  
  <p>for all types of joins?</p>
  
  <p>My understanding of <code>using(ID)</code> is that it's just shorthand for <code>on(T1.ID=T2.ID)</code>.  Is this true?</p>
  
  <p><br />
  Now for another question:</p>
  
  <p>Is the above the same as</p>
  
  <pre><code>... T1 join T2 on(T1.ID=T2.ID and T2.VALUE=42) ...
  </code></pre>
  
  <p>This I don't think is true, but why?  How does conditions in the on clause interact with the join vs if its in the where clause?</p>