Usar distinto em uma coluna e ordenar em outra coluna gera um erro

Tenho uma tabela: abc_test com colunas n_num, k_str.

Esta consulta não funciona:

    select distinct(n_num) from abc_test order by(k_str)

Mas este funciona:

    select n_num from abc_test order by(k_str)

Como as palavras-chave DISTINCT e ORDER BY funcionam internamente, que a saída de ambas as consultas é alterada?

questionAnswers(20)

yourAnswerToTheQuestion