SQL QuestSQL Interview Questions › Conditional Logic

Card Decline Rate by Plan

HardProQuerying BasicsConditional LogicAggregation & GroupingJoins

Declines are where a card team looks first, and they are always read as a rate, never a count. An attempt is a card_payment whose status is completed or declined (reversals are not attempts). Join to users and, per plan, count attempts, declines, and declines whose decline_reason is insufficient_funds.

Return plan, attempts, declined, insufficient_funds and decline_rate_pct (100.0 * declined / attempts, rounded to 1 decimal). Order by decline_rate_pct descending.

Solve it in the browser editor →

Runs on SQLite in your browser, graded against the expected result, no signup. A wrong answer gets a diagnosis, not just "incorrect".

Schema

transactions

txn_iduser_idtstypeamountcurrencyamount_gbpfee_gbpmerchant_categorymerchant_countrycounterparty_user_idstatusdecline_reason
112025-06-14 11:01:51fx_exchange32271.15JPY167.811.68NULLNULLNULLcompletedNULL
212025-06-14 11:17:45bill_payment59.53EUR50.60utilitiesIENULLcompletedNULL
372025-06-16 10:06:38card_payment122.27EUR103.930shoppingESNULLcompletedNULL

users

user_idsignup_datecountryhome_currencyplanplan_sincekyc_verified_atreferred_bybirth_year
12025-06-01IEEURstandard2025-06-012025-06-03 16:00:00NULL1972
22025-06-02FREURstandard2025-06-022025-06-04 16:00:00NULL1979
32025-06-03GBGBPstandard2025-06-032025-06-08 04:00:00NULL1977

Expected output: plan=metal, attempts=43, declined=2, insufficient_funds=2, decline_rate_pct=4.7 ...

Hint

This is a Pro challenge — the hint, the step-by-step tutor and the reference solution open in the app.

Concepts

SELECT CASE SUM JOIN GROUP BY WHERE Conditional Aggregation

Practise the topic: SQL practice questions · CASE WHEN practice · GROUP BY exercises · JOIN practice · Advanced SQL interview questions

In these company practice sets

Revolut

A SQL Quest challenge matched to patterns reported for these companies — not a question any of them has published.

Related questions

Order Sessionization by CustomerHard · ProSelf-Join: Manager Salary ComparisonHard · ProCustomer Lifetime Value PipelineHard · ProOrder Funnel ConversionHard · ProIsland Length ClassificationHard · ProDepartment Salary Percentile BucketsHard · Pro

Where would this cost you points in an interview?

Ten questions, no signup: a Skillmap across nine SQL skills and the one to fix first.

Take the readiness test