Thread: WHERE AND JOIN STATEMENTS

WHERE AND JOIN STATEMENTS

From
JORGE MALDONADO
Date:
What is the advantage (or advantages) of using JOIN instead of WHERE in a SELECT statement?
Is JOIN faster than WHERE?
 
I have a SELECT statement that involves 7 tables and I am using WHERE to relate them and get the result I need but I want to know if there is a performance issue if I change to JOIN.
 
Respectfully,
Jorge Maldonado

Re: WHERE AND JOIN STATEMENTS

From
Jure Kobal
Date:
> What is the advantage (or advantages) of using JOIN instead of WHERE in a
> SELECT statement?
> Is JOIN faster than WHERE?
>
> I have a SELECT statement that involves 7 tables and I am using WHERE to
> relate them and get the result I need but I want to know if there is a
> performance issue if I change to JOIN.
>
> Respectfully,
> Jorge Maldonado
>

When it comes to speed they are both the same (talking about INNER JOIN here).
You can check the query plan and see it's the same for both.
About the advantages of using JOIN. This is my opinion but for many tables
it's easyer to read the query with JOIN then WHERE clause.
A small example:

SELECT *
FROM a
        INNER JOIN
        b
        ON (
          a.id = b.aid
        )
WHERE a.id = 'value'

SELECT *
FROM a, b
WHERE a.id = b.aid
AND a.id = 'value'

Now with many tables it's a bit easier to see the relations while using JOIN
instead of WHERE and using WHERE only for conditions.

--
Regards,
Jure

Re: WHERE AND JOIN STATEMENTS

From
Tim Landscheidt
Date:
Jure Kobal <j.kobal@gmx.com> wrote:

>> What is the advantage (or advantages) of using JOIN instead of WHERE in a
>> SELECT statement?
>> Is JOIN faster than WHERE?

>> I have a SELECT statement that involves 7 tables and I am using WHERE to
>> relate them and get the result I need but I want to know if there is a
>> performance issue if I change to JOIN.

> When it comes to speed they are both the same (talking about INNER JOIN here).
> You can check the query plan and see it's the same for both.
> About the advantages of using JOIN. This is my opinion but for many tables
> it's easyer to read the query with JOIN then WHERE clause.
> A small example:

> SELECT *
> FROM a
>         INNER JOIN
>         b
>         ON (
>           a.id = b.aid
>         )
> WHERE a.id = 'value'

> SELECT *
> FROM a, b
> WHERE a.id = b.aid
> AND a.id = 'value'

> Now with many tables it's a bit easier to see the relations while using JOIN
> instead of WHERE and using WHERE only for conditions.

Another disadvantage of the non-JOIN syntax is that you need
to be more careful if you add more conditions with OR.

Tim

Re: WHERE AND JOIN STATEMENTS

From
Jasen Betts
Date:
On 2010-03-05, JORGE MALDONADO <jorgemal1960@gmail.com> wrote:
> --000e0cdf986cab962e048111beb4
> Content-Type: text/plain; charset=ISO-8859-1
>
> What is the advantage (or advantages) of using JOIN instead of WHERE in a
> SELECT statement?
> Is JOIN faster than WHERE?

Join is IMO easier to read, also asier to change if you want left
join instead etc.