Si quieres queries super optimizados que únicamente devuelvan lo que necesitas, mejor usa otra cosa. Hibernate genera SQL como mejor le parece y aunque en general es bastante eficiente, pues está hecho para acomodar la mayoría de los casos. Además como mapea tuplas con objetos, necesita obtener todos los atributos que haya definidos en el mapeo.
Aquí se ve que tus entidades tienen definidas algunas relaciones, que seguramente no están marcadas como Lazy, y por eso el query termina trayendo datos de varias tablas.
generación de SQL
Si quieres queries super optimizados que únicamente devuelvan lo que necesitas, mejor usa otra cosa. Hibernate genera SQL como mejor le parece y aunque en general es bastante eficiente, pues está hecho para acomodar la mayoría de los casos. Además como mapea tuplas con objetos, necesita obtener todos los atributos que haya definidos en el mapeo.
Aquí se ve que tus entidades tienen definidas algunas relaciones, que seguramente no están marcadas como Lazy, y por eso el query termina trayendo datos de varias tablas.
FetchTye.Lazy Ok "Necesio un cable xD"
Ya me devuelve menos data seteando el parametro FetchType.Lazy como comentas ezamudios.
El asunto viene que sigue estando lenta esta parde del codigo
Aqui pongo la clase BackGroundTableCliente