Dataford
Popular roles
Software EngineerData AnalystData ScientistData EngineerBusiness AnalystAI EngineerMachine Learning EngineerProduct Manager
Browse
Browse All RolesEvery role hub, from analyst to MLBrowse All CompaniesCompany-specific interview loopsAll Interview GuidesThe full guide library
Top questions by role
Software EngineerData AnalystData ScientistData EngineerBusiness AnalystAI EngineerMachine Learning EngineerProduct Manager
Top questions by skill
SQLPythonStatisticsMachine LearningA/B TestingSystem DesignGenerative AIProduct SenseMetricsBehavioral
Browse all questions →Try a mock interview
ExperiencesCoaching
New
Practice
Mock InterviewsTimed interview simulations with feedbackSuccess PathYour 6-week structured planModulesCurated lessons by topicWebinarsTalks from ex-Big Tech data leadsPlaygroundA free-form scratch editor
Learn
BlogInterview strategy and career adviceTech Job Market ReportHiring trends across data and AI rolesFor UniversitiesDataford for career centersAbout DatafordWho we are and how we build
Pricing
Get started
Adobe Campaign and Web Tech
00:00
5 left

Adobe Campaign and Web Tech

MediumSQL · PostgreSQL

Problem

Tell me about Adobe Campaign Classic and your experience with HTML, CSS, JavaScript, and SQL.

For the SQL portion, write a PostgreSQL query using the Adobe Campaign Classic delivery and broad log data to report email performance for deliveries launched during the first half of 2025.

Output

  1. One row per qualifying delivery, ordered by launch date and delivery ID.
  2. Return delivery_month, delivery_id, delivery_name, recipient_count, delivered_count, failed_count, opened_count, and delivery_rate_percent.
  3. Include deliveries with no broad log records, and calculate the delivery rate as delivered recipients divided by all logged recipients.

Output details

  • Filter to deliveries whose channel equals Email.
  • Treat the date range as inclusive of 2025-01-01 and exclusive of 2025-07-01.
  • Count records with status Delivered as delivered and status Failed as failed.
  • Count records with a non-NULL opened_at as opened.
  • Round delivery_rate_percent to two decimal places and return NULL when no recipients are logged.

Schema

adobe_campaign_deliveries
ColumnTypeDescription
delivery_idPKINTUnique Adobe Campaign Classic delivery identifier
delivery_nameVARCHAR(150)Delivery label
channelVARCHAR(30)Campaign communication channel
start_atTIMESTAMPDelivery launch timestamp
adobe_campaign_broadlogs
ColumnTypeDescription
broadlog_idPKINTUnique broad log identifier
delivery_idINTReferenced Adobe Campaign Classic delivery
recipient_idINTRecipient identifier
statusVARCHAR(30)Delivery outcome status
opened_atTIMESTAMPTimestamp when the message was opened
Tablesadobe_campaign_deliveriesadobe_campaign_broadlogs
Interviewer

Whenever you're ready, walk me through your approach or go straight to the code. The requirements and the two tables are in the Question tab.

You need to log in / sign up to run or submit.
CodePostgreSQL
Sign up free to run your codeLog inLn 1
Run your query to see results here.