What is the difference between IN and EXISTS operators in
SQL Server?
Answers were Sorted based on User's Feedback
Answer / monal
HERE'S THE SIMPLE ANSWER:
WHEN YOU USE 'IN', WHILE CHECKING FOR WHERE CONDITION SQL
SERVER ENGINE DOES WHOLE TABLE SCAN.
IF YOU USE 'EXISTS' AS SOON AS ENGINE FINDS THE REQUIRED
ROW IT WILL STOP EXECUTING QUERY AND GOING FURTHER SCANNING
TABLE.
SO BASICALLY EXISTS IS FASTER AS COMPARED TO IN.
Is This Answer Correct ? | 146 Yes | 14 No |
Answer / vijaykumar dolli
using the IN clause, you're telling the rule-based
optimizer that you want the inner query to drive the outer
query (think: IN = inside to outside).
When you write EXISTS in a where clause, you're telling the
optimizer that you want the outer query to be run first,
using each value to fetch a value from the inner query
(think: EXISTS = outside to inside).
Thank you
Is This Answer Correct ? | 106 Yes | 15 No |
Answer / pranab
IN:
Returns true if a specified value matches any value in a
sub-query or a list.
Exists:
Returns true if a sub-query contains any rows.
Is This Answer Correct ? | 27 Yes | 8 No |
Answer / navneet sharma
IN work like a OR in sql query but in is faster than OR in
case of IN server will search whole table
EXISTS is use to find the required row and does not search
whole table
Is This Answer Correct ? | 29 Yes | 16 No |
Answer / arslan
the basic difference between in and exists
let's take the example of for loop in c++ and in loops when you write break statement it will iterates until the condition of break statement will true this like exist and in
if you didn't put break in it then it will execute the whole loop
Is This Answer Correct ? | 7 Yes | 7 No |
Answer / raja
in operator returns the condition satisfied rows only
But in exists operator if any condition satisfied it will returns all the rows.
Is This Answer Correct ? | 6 Yes | 15 No |
Is sql server free?
Different types of keys in SQL?
What is the difference between dropping a database and taking a database offline?
What do you mean by an execution plan? Why is it used?
What are the common performance issues in sql server?
Which data type columns are the best candidates for full-text indexing?
What is the diff between Static Queries and Dynamic queries give me some examples
Are there any preferred steps that need to be taken care of before starting the installation of sql server 2000?
What are logical/boolean operations in ms sql server?
How to disable a login name in ms sql server?
What triggers long term care?
What is the difference between function and stored procedure in sql server?