Difference between IN and EXISTS
Answers were Sorted based on User's Feedback
Answer / udaykumar
IN - returns a numeric value.
EXIT - returns a boolean value.
Is This Answer Correct ? | 7 Yes | 2 No |
Answer / anju saxena
The EXISTS operator tests whether a given set is empty or
not. An exist operator on empty set returns False while on
nonempty set it returns True.
IN operator is used where membership of the element has to
tested against the set.
Is This Answer Correct ? | 8 Yes | 4 No |
Answer / subathra
IN: Inner query executes first and drives the outer query.
EXISTS: Outer query executes first and compares tge rows
retrived with the inner query.
Consider table tab1 has 1000 rows and table tab2 has 1000
rows.
IN: select t1.empid from tab1 t1 where t1.code in (select
t2.code from tab2 t2) -- All rows in t1 will read with t2
and the effect is 1000 X 1000 rows.
EXISTS: select t1.empid from tab1 t1 where exists (select 1
from tab2 t2 where t1.code=t2.code) -- Max of 1 row will be
read for each row of t1 and thus reduces the processing
overhead.
Thumb rule:
1) If the majority of the filtering are in the sub query
then use IN.
1) If the majority of the filtering are in the outer query
then use EXISTS.
Is This Answer Correct ? | 4 Yes | 0 No |
Answer / yaswanth
IN looks for specified value and
EXISTS looks for whether particular row exists or not
Is This Answer Correct ? | 2 Yes | 0 No |
What is sql query limit?
What is materialized view in sql?
Define concurrency control. : Transact sql
tell me about various levels of constraint. : Sql dba
What can you do with pl sql?
How do you use collections in procedure to return the resultset?
what are the limitations of identity column? : Transact sql
What are wait events. Describe the wait event tables.
wht is the difference between sqlaserver2000 and 2005
Write a pl/sql script to display the following series of numbers: 99,96,93……9,6,3?
Why is pl sql used?
How to pronounce postgresql?