This query looks very nice and clean. I can't see any obvious or glaring issues here, I do have some ideas for improvement though: ### Naming `a`, `u`, `q` and `p` are not all that "expressive" aliases. There is no need to shorten these aliases to be incomprehensible for people outside the SE-System, that don't understand how `Posts a` is different from `Posts q` ### Select X How about also making the number of results variable? SELECT TOP ##topX:int?100## allows the user to decide how many results they want. ### CTE's Last time I checked, Data Explorer supported CTE's. Make use of them: WITH Zombies AS ( SELECT q.Id ZombieId, MAX(a.Score) MaxAnswerScore -- ... ) SELECT ##topX:int?100## FROM Zombies