178|SQL – Unions with Precision

Time to Complete: 10 min
Difficulty: Easy
Solution:

  1. SELECT first_name, last_name, employee_email As email
    From Employee
    Union
    Select first_name, last_name, email
    From Vendor
  2. SELECT *
    From New_Inventory
    Union
    Select *
    From Inventory
  3. SELECT DISTINCT emp_reviewer_id AS employee_id
    From Orders
    Union ALL
    SELECT DISTINCT emp_order_creation_id AS employee_id
    From Orders
    Union ALL
    Select employee_id
    From Employee

Time: 10 minutes
Difficulty: Easy

  1. SELECT first_name, last_name, employee_email
    FROM Employee
    UNION
    SELECT employee_email AS email, first_name, last_name
    FROM Vendor
  2. SELECT *
    FROM New_Inventory
    UNION
    SELECT *
    FROM Inventory
  3. SELECT DISTINCT emp_reviewer_id AS employee_id
    FROM Orders
    UNION ALL
    SELECT DISTINCT emp_order_creation_id AS employee_id
    FROM Orders
    UNION ALL
    SELECT employee_id
    FROM Employee

Time to Complete: 10 minutes
Difficulty: Easy
Solution: See Below

SELECT first_name, last_name, employee_email AS email
FROM Employee
UNION
SELECT first_name, last_name, email
FROM Vendor;

SELECT * FROM Inventory
UNION
SELECT * FROM New_Inventory;

SELECT DISTINCT emp_reviewer_id AS employee_id
FROM Orders
UNION ALL
SELECT DISTINCT emp_order_creation_id AS employee_id
FROM Orders
UNION ALL
SELECT employee_id
FROM Employee;

Time to Complete: 20 minutes
Difficulty: Moderate
Solution: See Below

Q1
SELECT first_name, last_name, employee_email AS email

FROM Employee

UNION SELECT first_name, last_name, email

FROM Vendor
Q2
SELECT *

FROM New_Inventory

UNION SELECT *

FROM Inventory

Q3
SELECT DISTINCT emp_reviewer_id AS employee_id

FROM Orders

UNION ALL

SELECT employee_id

FROM Employee

UNION ALL

SELECT DISTINCT emp_order_creation_id AS employee_id

FROM Orders

Time to complete: 15 min
Difficult: Easy

  1. SELECT Employee.first_name, Employee.last_name, Employee.employee_email as email
    FROM Employee
    UNION SELECT Vendor.first_name, Vendor.last_name, Vendor.email
    FROM Vendor;

  2. SELECT*
    FROM Inventory
    UNION SELECT*
    FROM New_Inventory;

  3. SELECT DISTINCT Orders.emp_reviewer_id AS employee_id
    FROM Orders
    UNION ALL
    SELECT DISTINCT Orders.emp_order_creation_id AS employee_id
    FROM Orders
    UNION ALL
    SELECT Employee.employee_id
    FROM Employee;

Time to Complete: 15
Difficulty: Easy
See Solution Below:
1:
SELECT first_name, last_name, employee_email as email
From employee
Union
Select first_name, last_name, email
From vendor;
2:
SELECT *
From New_Inventory
UNION
Select *
From Inventory;
3:
SELECT DISTINCT emp_reviewer_id as employee_id
From Orders
Union ALL
Select DISTINCT emp_order_creation_id as employee_id
From Orders
Union ALL
Select employee_id
From employee;

Time to complete 15 minutes
Difficulty: Easy
Solution

  1. SELECT first_name, last_name, employee_email AS email FROM Employee
    UNION
    SELECT first_name, last_name, email FROM Vendor ;
  2. SELECT inventory_name FROM New_Inventory
    UNION
    SELECT inventory_name FROM Inventory;
  3. SELECT DISTINCT emp_reviewer_id AS employee_id FROM Orders
    UNION ALL
    SELECT DISTINCT emp_order_creation_id AS employee_id FROM Orders
    UNION ALL
    SELECT employee_id FROM Employee ;

Time to Complete: 10 minutes
Difficulty: Beginner
Solution:

SELECT first_name, last_name, employee_email
FROM Employee
UNION
SELECT first_name, last_name, email
FROM Vendor;

SELECT *
FROM New_Inventory
UNION
SELECT *
FROM Inventory;

SELECT DISTINCT emp_reviewer_id AS employee_id
FROM Orders
UNION ALL
SELECT DISTINCT emp_order_creation_id AS employee_id
FROM Orders
UNION ALL
SELECT employee_id
FROM Employee;

Time: 7 min
Difficulty: Easy
Solutions:
Q1
SELECT e.first_name, e.last_name, e.employee_email AS email

FROM Employee as e

UNION

SELECT v.first_name, v.last_name, v.email

FROM Vendor as v;
Q2
SELECT *

FROM Inventory

UNION

SELECT *

FROM New_Inventory;
Q3
SELECT DISTINCT o.emp_reviewer_id AS employee_id

FROM Orders as o

UNION ALL

SELECT DISTINCT o.emp_order_creation_id

FROM Orders as o

UNION ALL

SELECT e.employee_id

FROM Employee as e;

Time to complete: 25 mins
Difficulty: Medium
Solutions:

  1. SELECT first_name, last_name, employee_email AS email
    FROM Employee
    UNION
    SELECT first_name, last_name, email
    FROM Vendor;

  2. SELECT *
    FROM Inventory
    UNION
    SELECT *
    FROM New_Inventory;

  3. SELECT DISTINCT emp_reviewer_id AS employee_id
    FROM Orders

UNION ALL

SELECT DISTINCT emp_order_creation_id AS employee_id
FROM Orders

UNION ALL

SELECT employee_id
FROM Employee;

Time:10 mins
Difficulty: Easy
Solutions:

1.SELECT first_name, last_name, employee_email AS email FROM Employee
UNION
SELECT first_name, last_name,email FROM Vendor;

2.SELECT * FROM New_inventory
UNION
SELECT * FROM Inventory;

3.SELECT DISTINCT emp_reviewer_id AS employee_id FROM Orders
UNION ALL
SELECT DISTINCT emp_order_creation_id AS employee_id FROM Orders
UNION ALL
SELECT employee_id FROM Employee;

Time: 20
Rating: Beginner

Solution
Q1
SELECT first_name, last_name, employee_email AS email
FROM Employee
UNION
SELECT first_name, last_name, email
FROM Vendor;

Q2
SELECT * FROM Inventory
UNION
SELECT * FROM New_Inventory;

Q3
SELECT DISTINCT emp_reviewer_id AS employee_id
FROM Orders
UNION ALL
SELECT DISTINCT emp_order_creation_id AS employee_id
FROM Orders
UNION ALL
SELECT employee_id
FROM Employee;

Time to Complete: 7 minutes
Difficulty: Easy
Solutions:

  1. SELECT first_name, last_name, employee_email AS email
    FROM Employee
    UNION
    SELECT first_name, last_name, email
    FROM Vendor;

  2. SELECT *
    FROM New_Inventory
    UNION
    SELECT *
    FROM Inventory;

  3. SELECT DISTINCT emp_reviewer_id AS employee_id
    FROM Orders
    UNION ALL
    SELECT DISTINCT emp_order_creation_id AS employee_id
    FROM Orders
    UNION ALL
    SELECT employee_id
    FROM Employee;

Time to complete: 8 minutes
Difficulty: Beginner
Solution:

Q1:
SELECT e.first_name, e.last_name, e.employee_email AS email
FROM Employee AS e
UNION
SELECT v.first_name, v.last_name, v.email
FROM Vendor AS v;

Q2:
SELECT *
FROM New_Inventory
UNION
SELECT *
FROM Inventory;

Q3:
SELECT DISTINCT o.emp_reviewer_id AS employee_id
FROM Orders AS o
UNION ALL
SELECT DISTINCT o.emp_order_creation_id
FROM Orders AS o
UNION ALL
SELECT DISTINCT e.employee_id
FROM Employee AS e;

Time to Complete: 10 minutes
Rating: Easy
Solution:

  1. SELECT e.first_name, e.last_name, e.employee_email AS email
    FROM Employee AS e
    UNION SELECT v.first_name, v.last_name, v.email
    FROM Vendor AS v;
  2. SELECT *
    FROM Inventory
    UNION SELECT *
    FROM New_Inventory;
  3. SELECT DISTINCT emp_reviewer_id AS employee_id
    FROM Orders
    UNION ALL
    SELECT employee_id
    FROM Employee
    UNION ALL SELECT DISTINCT emp_order_creation_id AS employee_id
    FROM Orders;

Time to Complete: 10 Minutes
Difficulty: Easy
Notes: Good practice of Union versus Union All

1:
SELECT e.first_name, e.last_name, e.employee_email AS email
FROM Employee AS e
UNION
SELECT v.first_name, v.last_name, email
FROM Vendor AS v;

2:
SELECT *
FROM New_Inventory
UNION
SELECT *
FROM Inventory;

3:
SELECT DISTINCT o.emp_review_id AS employee_ID
FROM Orders AS o
UNION ALL
SELECT DISTINCT o.emp_order_creation_id AS employee_ID
FROM Orders AS o
UNION ALL
SELECT e.employee_id
FROM Employee AS e;

Time to complete: 10 minutes
Difficulty: easy
Solutions:

  1. SELECT first_name, last_name, employee_email AS email
    FROM Employee
    UNION
    SELECT first_name, last_name, email
    FROM Vendor

  2. SELECT *
    FROM Inventory
    UNION
    SELECT *
    FROM New_Inventory

  3. SELECT DISTINCT emp_reviewer_id AS employee_id
    FROM Orders
    UNION ALL
    SELECT employee_id
    FROM Employee
    UNION ALL
    SELECT DISTINCT emp_order_creation_id AS employee_id
    FROM Orders

Time to complete: 15 mins
Difficulty: Easy
Solution:

  1. SELECT first_name, last_name, employee_email AS email FROM Employee
    UNION
    SELECT first_name, last_name, email FROM Vendor

  2. SELECT * FROM Inventory
    UNION
    SELECT * FROM New_Inventory

  3. SELECT DISTINCT emp_reviewer_id AS employee_id FROM ORDERS
    UNION ALL
    SELECT DISTINCT emp_order_creation_id AS employee_id FROM ORDERS
    UNION ALL
    SELECT employee_id FROM Employee

Time: 25
Difficulty: Medium
Solution:
Q1
SELECT first_name,last_name,employee_email as email
FROM Employee
UNION
SELECT first_name, last_name, email
FROM Vendor;
Q2
SELECT *
FROM Inventory
UNION
SELECT *
FROM New_Inventory;
Q3
SELECT DISTINCT emp_reviewer_id AS employee_id
FROM Orders
UNION ALL
SELECT DISTINCT emp_order_creation_id AS employee_id
FROM Orders
UNION ALL
SELECT employee_id
FROM Employee;

Time: 15 min
Difficulty: moderate
Solution:
SELECT e.first_name, e.last_name, e.employee_email AS email
FROM Employee AS e
UNION
SELECT v.first_name, v.last_name, v.email
FROM Vendor AS v;

SELECT *
FROM Inventory
UNION
SELECT *
FROM New_Inventory;

SELECT DISTINCT emp_reviewer_id AS employee_id
FROM Orders
UNION ALL
SELECT employee_id
FROM Employee
UNION ALL
SELECT DISTINCT emp_order_creation_id
FROM Orders;