Я не думаю, что уровень представления важен.
Один из способов реализовать это - использовать пользовательский запрос, например:
public interface CustomRepository extends JpaRepository<MyEntity, Long> {
@Query(value = "SELECT id, column1, column2, (
SELECT EXTRACT(EPOCH from timezone1) - EXTRACT(EPOCH FROM timezone2)
FROM table where id = t.id) as difference
FROM table t", nativeQuery = true)
List<MyEntityProjection> findAllWithTimestamp();
}
MyEntityProjection
- это проекция Интерфейс, содержащий геттеры всех полей плюс геттер для второго различия. Если вы хотите узнать больше о проекциях, вы можете попробовать здесь
PS приведенный выше запрос работает только в PostgreSQL.