Para criar querys que retornem apenas campos específicos, não é possível através das Derived Queries, para isso é utilizado Native Query.
Entretanto, para receber esse campos, é preciso criar uma Projeção. Uma Projeção é uma interface que define métodos get() para os atributos consultados.
public interface FuncionarioProjecao {
Integer getId();
String getNome();
Double getSalario();
}
Também é possível utilizar uma classe DTO.
public class FuncionarioDto {
private Integer id;
private String nome;
private Double salario;
//getter e setter
//construtor recebendo os atributos
//na ordem da query
}
Uma classe dá muito mais trabalho de escrever e manter, mas pode ter uma vantagem, pois podemos adicionar métodos mais específicos que podem fazer sentido para a view (por exemplo, os de formatação).