|
Posted by petersprc on 01/01/07 03:37
It doesn't appear to be the same...
The INNER JOIN will return only orders that have a corresponding
paypalipn_txn record and belong to customer 4417.
The original LEFT JOIN returns all orders that belong to customer 4417.
If there's a paypalipn_txn record matching the join criteria, those
fields will be filled in, otherwise they will appear as NULL.
Some more info:
http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96540/queries7.htm#2054014
http://dev.mysql.com/doc/refman/5.0/en/join.html
Syl wrote:
> Hello! Can someone verify this for me please.
>
> Should these 2 statments return the same result ? The 2nd one is the
> original, the first one is my re-write. Thanks :
>
> SELECT orders_status, paypalipn_txn . *
> FROM orders
> INNER JOIN paypalipn_txn ON item_number = orders_id
> WHERE customers_id = 4417
> ORDER BY date_purchased DESC LIMIT 1
>
> and :
>
> SELECT o.orders_status,p.*
> FROM orders o
> LEFT JOIN paypalipn_txn p on p.item_number = o.orders_id
> AND o.customers_id = 4417 order by o.date_purchased desc limit 1
Navigation:
[Reply to this message]
|