inblog logo
|
devleekangho
    용어정리

    DB의 프로젝션(Projection)

    KangHo Lee's avatar
    KangHo Lee
    Dec 02, 2024
    DB의 프로젝션(Projection)
    • 데이터베이스에서 프로젝션(projection)은 쿼리 결과에서 필요한 열(컬럼)만 선택하여 반환하는 과정입니다.
    • 이는 불필요한 데이터를 제외하고, 필요한 데이터만 효율적으로 조회할 수 있게 해줍니다.
    • SQL 쿼리뿐만 아니라 JPA와 같은 ORM 프레임워크에서도 사용됩니다.
    • 프로젝션은 성능 최적화와 데이터 전송량을 줄이는 데 중요한 역할을 합니다.

    SQL에서의 프로젝션

    • SQL 쿼리에서 프로젝션은 SELECT 문을 사용하여 특정 열만 선택하는 것입니다.

    예시

    SELECT name, age FROM Users;
    • 위 쿼리는 Users 테이블에서 name과 age 열만 선택하여 반환합니다. 이를 통해 전체 행(row)이 아닌 필요한 열만 조회하게 됩니다.

    JPQL에서의 프로젝션

    • JPQL에서는 필요한 엔티티의 특정 필드만 선택하여 프로젝션을 수행할 수 있습니다.
    java
    @PersistenceContext private EntityManager entityManager; public List<Object[]> getUserNamesAndAges() { String jpql = "SELECT u.name, u.age FROM User u"; return entityManager.createQuery(jpql).getResultList(); }
    • 위 코드에서는 User 엔티티에서 name과 age 필드만 선택하여 결과를 반환합니다.
    • 반환된 결과는 Object[] 배열 형태입니다.
    Share article

    devleekangho

    RSS·Powered by Inblog