In the first query, you are using a WHERE clause to apply the predicate "O.custid= 1." Where as, with the second query, you are applying the predicate on the join clause. For an INNER JOIN there isn't a difference in the result set. However, if you do an OUTER join, where you apply the predicate can make a difference in the result set.