title: Ambiguous column name - is it though?
body: <p>If I want to write a query with a simple join, I can do this:</p>
  
  <pre><code>select * from customer c
  join order o
  on c.customerid = o.customerid
  where c.customerid = 100
  </code></pre>
  
  <p>and it all works fine. In this query, is there a reason why I have to specify a table alias  - ie. <code>c.customerid</code>? Why can't I just write this:</p>
  
  <pre><code>select * from customer c
  join order o
  on c.customerid = o.customerid
  where customerid = 100
  </code></pre>
  
  <p>I get the error <code>Ambiguous column name 'customerid'</code>. In this case, where there's only one column in the WHERE clause and it's the column on which I'm JOINing, is this actually "ambiguous"? Or is it just to comply with the ansi-standard (I'm guessing here - I don't know if it does comply) and to encourage good coding conventions?</p>