For your simple case, they are equivalent. Despite the fact that the keyword โJOINโ is not present in method # 1, it still performs joins.
However, method # 2 offers the flexibility to provide additional JOIN conditions that cannot be met using WHERE clauses. For example, when you make aliases with several aliases against one table.
select a.id, b.id, c.id from sometable A left join othertable as b on a.id=b.a_id and some_condition_in_othertable left join othertable as c on a.id=c.a_id and other_condition_in_othertable
The inclusion of two additional conditions in the whereclause will cause the query to return nothing, since both conditions cannot be true at the same time in the where clause, but are possible in the connection.
source share