Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Cash and Position Reconciliation SQL

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

Your question is Cash and Position Reconciliation SQL. Start with the requirements and the two 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

Write a SQL query to reconcile cash and position data between a fund manager and a custodian, highlighting mismatches by account and date.

Use the two supplied source tables and include records missing from either source. Treat NULL values as distinct from populated values when determining whether a field mismatches.

Output

  1. One row per account and date with a mismatch.
  2. Return account_id, as_of_date, both cash values, cash difference, both position values, position difference, and mismatch_type.
  3. Order by account_id, then as_of_date.

Schema

fund_manager_balances
ColumnTypeDescription
account_idPKVARCHAR(20)Fund account identifier
as_of_datePKDATEBalance valuation date
cash_balanceDECIMAL(18,2)Cash balance reported by the fund manager
position_valueDECIMAL(18,2)Total position value reported by the fund manager
custodian_balances
ColumnTypeDescription
account_idPKVARCHAR(20)Custodian account identifier
as_of_datePKDATEBalance valuation date
cash_balanceDECIMAL(18,2)Cash balance reported by the custodian
position_valueDECIMAL(18,2)Total position value reported by the custodian
Tablesfund_manager_balancescustodian_balances
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results