Answer: Using INTERSECT
Find a detailed explanation of using INTERSECT in SQL queries.
We'll cover the following...
Solution
The solution is given below:
/* The query to find employees who have sales in themonth of January for both Cosmetics and Footwear */SELECT E.EName AS 'Employee Name' FROM Employees EJOIN Sales S ON E.EID = S.EIDJOIN ProductCategories PC ON S.CategoryID = PC.CategoryIDWHERE S.Month = 'January' AND PC.CategoryName = 'Cosmetics'INTERSECTSELECT E.EName AS 'Employee Name' FROM Employees EJOIN Sales S ON E.EID = S.EIDJOIN ProductCategories PC ON S.CategoryID = PC.CategoryIDWHERE S.Month = 'January' AND PC.CategoryName = 'Footwear';
Code explanation
The explanation of the solution code is given below:
Line 3: The
SELECTstatement selects the columnsEName. The data is retrieved from theEmployeestable. We useASto set an alias for the columns and tables.Line 4: The
JOINis applied withSaleson columnsEIDin both the tables.Line 5: Another
JOINis applied to connectSalesandProductCategorieson columnsCategoryIDin both the tables.Line 6: The
WHEREclause specifies the condition on which we want to retrieve the data from the table. We get the data for the month ofJanuaryandCosmeticscategory.Line 8: The
INTERSECTkeyword is used to intersect the results of two queries.Line 10: The
SELECTstatement selects the columnsEName. The data is retrieved from ...