March 31, 2015

Difference between IN,ANY and ALL in SQL Server

DECLARE @Table TABLE
(
ID INT
)

INSERT INTO @Table
SELECT 100 UNION ALL
SELECT 200 UNION ALL
SELECT 300 UNION ALL
SELECT 400

DECLARE @AnyTable TABLE
(
ID INT
)

INSERT INTO @AnyTable
SELECT 100 UNION ALL
SELECT 200 UNION ALL
SELECT 300

SELECT ID FROM @Table WHERE ID IN (SELECT ID FROM @AnyTable)

image 

SELECT ID FROM @Table WHERE ID > ANY(SELECT ID FROM @AnyTable)

image

SELECT ID FROM @Table WHERE ID > ALL(SELECT ID FROM @AnyTable)

image

No comments:

Post a Comment