Back to Practice
#0331

Next Login Date

MediumSQL24 min20 XP

Problem

Return user_id, login_date, and next_login_date for every login.

Why This Matters

SQL interviews usually test whether you can turn a business question into the right rows, grouping level, join type, and edge-case behavior.

Schema

logins(login_id INTEGER, user_id INTEGER, login_date TEXT)

Examples

Example 1
Inputuser 1 has Jan 1 and Jan 4 logins
OutputJan 1 next login is Jan 4

LEAD reads the next row in the user partition.

Constraints

  • Return only the requested columns.
  • Use deterministic ORDER BY when multiple rows are returned.
  • Assume SQLite-compatible SQL unless the prompt states otherwise.
CodeSQL
Visible browser tests run here when available.
Testcases1 visible / 3 hidden categories
Core SQL case
Inputuser 1 has Jan 1 and Jan 4 logins
Expected[[1,"2026-01-01","2026-01-04"],[1,"2026-01-04",null],[2,"2026-01-02",null]]

LEAD reads the next row in the user partition.

Hidden Test Categories
Empty or missing matchesDuplicate rows or tiesNULL values where the pattern commonly breaks