Orders per User in One Report
The report currently recounts orders separately for every user, which scales poorly on larger data. Rewrite it as one set-based calculation: every user must remain in the result, even with no orders. Return id and orders_count, sorted by id.
Original query
SELECT u.id, (SELECT COUNT(*) FROM orders o WHERE o.user_id = u.id) AS orders_count FROM users u ORDER BY u.id
Voorbeeld van verwachte uitvoer
Zo ziet een correct antwoord eruit — het aantal rijen is op zichzelf staand en hoeft niet overeen te komen met de schematabellen.
| id | orders_count |
|---|---|
| 1 | 2 |
| 2 | 2 |
| 3 | 1 |
Log in om je inzendingsgeschiedenis te zien
InloggenLog in om de AI-mentor te gebruiken
Inloggen