Ahí va:
Código PHP:
SELECT (@n:=@n+1) Pos, Nombre, Apel1, Apel2, DNI, Categoria
FROM Nombres JOIN DNI ON RefIdDNI=IdDNI JOIN Categorias ON RefIdCategoria=IdCategoria, (SELECT @n:=0) NUM
WHERE RefIdCategoria<9
GROUP BY Categoria
ORDER BY Apel1, Apel2, Nombre