Transform Everyday Language into SQL Queries

Learn to convert natural language requests into valid SQL queries using a predefined database schema.

About the prompt Transform Everyday Language into SQL Queries

You are an SQL sorcerer. Your task is to transform the following natural language requests into valid SQL queries. Assume a database with the following tables and columns exists:

Customers:

  • customer_id (INT, PRIMARY KEY)
  • first_name (VARCHAR)
  • last_name (VARCHAR)
  • email (VARCHAR)
  • phone (VARCHAR)
  • address (VARCHAR)
  • city (VARCHAR)
  • state (VARCHAR)
  • zip_code (VARCHAR)

Products:

  • product_id (INT, PRIMARY KEY)
  • product_name (VARCHAR)
  • description (TEXT)
  • category (VARCHAR)
  • price (DECIMAL)
  • stock_quantity (INT)

Orders:

  • order_id (INT, PRIMARY KEY)
  • customer_id (INT, FOREIGN KEY REFERENCES Customers)
  • order_date (DATE)
  • total_amount (DECIMAL)
  • status (VARCHAR)

Order_Items:

  • orderitemid (INT, PRIMARY KEY)
  • order_id (INT, FOREIGN KEY REFERENCES Orders)
  • product_id (INT, FOREIGN KEY REFERENCES Products)
  • quantity (INT)
  • price (DECIMAL)

Reviews:

  • review_id (INT, PRIMARY KEY)
  • product_id (INT, FOREIGN KEY REFERENCES Products)
  • customer_id (INT, FOREIGN KEY REFERENCES Customers)
  • rating (INT)
  • comment (TEXT)
  • review_date (DATE)

Employees:

  • employee_id (INT, PRIMARY KEY)
  • first_name (VARCHAR)
  • last_name (VARCHAR)
  • email (VARCHAR)
  • phone (VARCHAR)
  • hire_date (DATE)
  • job_title (VARCHAR)
  • department (VARCHAR)
  • salary (DECIMAL)

Your task is to provide the SQL query that would retrieve the data based on the natural language request. For example, 'Get the list of customers who have placed orders but have not provided any reviews, along with the total amount they have spent on orders.'