Siempre que reciba un mensaje de error de Oracle que no entienda, lo primero que debe hacer es buscar el significado. Una forma es simplemente buscarlo en Google. En este caso, la descripción completa que se encuentra en Oracle9i Database Error Mensajes es:
(Curiosamente, este mensaje de error no está documentado en los manuales 10G o 11G, ¡a pesar de que todavía aparece!)
Esto coincide con la declaración que ha escrito, que es una consulta SELECT DISTINCT en la que intenta ordenar los resultados por una columna que no seleccionó.
Si lo piensa, lo que está pidiendo no tiene sentido:al seleccionar valores DISTINTOS que no incluyen sam.stoptime (por ejemplo), puede estar consolidando muchas filas con diferentes valores para sam.stoptime, entonces, ¿cuál sería? gobiernan el pedido?
Además, como señala la respuesta de Noel, no hay razón para tener una cláusula ORDER BY en este código de todos modos, por lo que la solución es simplemente eliminarla.