Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

SQL Join With Date Filter

EasySQL · PostgreSQL00:00
Practice interviewer
In session
5 left
00:00

Your question is SQL Join With Date Filter. Start with the requirements and the three tables on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

SG Analytics needs a transaction extract for validating activity reported through its analytics dashboards. Write a PostgreSQL query that joins orders to customers and products, returning transactions from February 1, 2024 through February 29, 2024.

Requirements

  1. Use orders as the primary table and retain orders even when the customer or product has no matching record.
  2. Return the order ID, order date, customer details, product details, quantity, unit price, and calculated line total.
  3. Label each row as positive, zero, or negative based on the calculated line total.
  4. Sort the results by order date ascending and order ID ascending.

Schema

orders
ColumnTypeDescription
order_idPKINTUnique order identifier
customer_idINTReference to the customer placing the order
product_idINTReference to the ordered product
order_dateDATEDate when the order was placed
quantityINTNumber of units ordered
customers
ColumnTypeDescription
customer_idPKINTUnique customer identifier
customer_nameVARCHAR(100)Customer full name
segmentVARCHAR(30)Customer market segment
products
ColumnTypeDescription
product_idPKINTUnique product identifier
product_nameVARCHAR(100)Product display name
categoryVARCHAR(50)Product category
unit_priceNUMERIC(10,2)Price for one unit
Tablesorderscustomersproducts
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results