<p>Is there any efficiency difference in an explicit vs implicit inner join?
For example:</p>

<pre><code>SELECT * FROM
table a INNER JOIN table b
ON a.id = b.id;
</code></pre>

<p>vs.</p>

<pre><code>SELECT a.*, b.*
FROM table a, table b
WHERE a.id = b.id;
</code></pre>

Performance wise, they are exactly the same (at least in SQL Server).
PS: Be aware that the
```
IMPLICIT OUTER JOIN
```
syntax is deprecated since SQL Server 2005. (The
```
IMPLICIT INNER JOIN
```
syntax as used in the question is still supported)
Deprecation of "Old Style" JOIN Syntax: Only A Partial Thing