Re: SQL Update query
From: Tom (Tom_at_discussions.microsoft.com)
Date: 08/19/04
- Next message: Tom: "Re: SQL Update query"
- Previous message: Hugo Kornelis: "Re: SQL Update query"
- In reply to: Vishal Parkar: "Re: SQL Update query"
- Next in thread: Hugo Kornelis: "Re: SQL Update query"
- Messages sorted by: [ date ] [ thread ]
Date: Thu, 19 Aug 2004 06:35:01 -0700
Hi Vishal,
Thank you for your communication.
The detailed explaination had helped us clarifying some of the doubts.
Thanks
Thomas
"Vishal Parkar" wrote:
> hi tom,
>
> Internally in and exists clauses are evaluated differently.In clause is
> internally evaluated as multiple OR conditions. Whereas EXISTS clause checks
> for the subquery returns at least one row.
>
> This is typical scenario when checking non-existing rows from the table.
>
> select * from customers
> where customerid not in(select customerid from orders union all select null)
>
> If any of the rows from the subquery returns null value and if you are using
> NOT IN clause then you will get any empty resultset.
>
> You can use NOT EXISTS clause or LEFT OUTER JOIN to get the required result
> set.
>
> 1st method:
> select * from customers
> where not exists
> (select * from
> (select distinct customerid from orders union all select null) a
> where a.customerid = customers.customerid
> )
>
> 2nd method:
> select a.*
> from customers a left outer join
> (select distinct customerid from orders union all select null)b
> on a.customerid = b.customerid
> where b.customerid is null
>
>
> --
> Vishal Parkar
> vgparkar@yahoo.co.in | vgparkar@hotmail.com
>
>
>
- Next message: Tom: "Re: SQL Update query"
- Previous message: Hugo Kornelis: "Re: SQL Update query"
- In reply to: Vishal Parkar: "Re: SQL Update query"
- Next in thread: Hugo Kornelis: "Re: SQL Update query"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|
|