The Left Semi Join operator in an execution plan is used to return rows from the left table (or outer input) where there is a match in the right table (or inner input). This type of join is typically employed when using EXISTS or IN conditions to filter data based on the presence of related records in another table.
See the example
CREATE TABLE customers INSERT INTO Customers (CustomerID, CustomerName) VALUES (1, 'Bagesh'), (2, 'Rajesh'), (3, 'Ganesh'), (4, 'Mahesh'); VALUES (101, 1, 250.00), (102, 1, 300.00), (103, 3, 700.00); |
Run the below query and see the
execution plan
SELECT CustomerID, CustomerName FROM Customers c WHERE EXISTS ( SELECT 1 FROM Orders o WHERE o.CustomerID = c.CustomerID ); |
If we are using IN operator
then also we can see this operator.
SELECT CustomerID, CustomerName FROM Customers c WHERE c.CustomerID Not in ( SELECT o.CustomerID FROM Orders o ); |
Run this script and see the execution plan
No comments:
Post a Comment
If you have any doubt, please let me know.