스터디/JPA

[Querydsl] 6. 기본문법 - 정렬

짐배몬 2020. 10. 23. 22:31

Querydsl 에서 사용하는 정렬 방법

1. 오름차순 내림차순 정렬

Querydsl 에서 정렬 사용시 오름차순은 asc 내림차순은 desc 를 컬럼 파라미터 뒤쪽에 붙여주면 된다

//회원이름 오름차순
List<Member> result = queryFactory
    .selectFrom(member)
    .orderBy(member.username.asc())
    .fetch();

//회원이름 내림차순
List<Member> result = queryFactory
    .selectFrom(member)
    .orderBy(member.username.desc())
    .fetch();

2. null 데이터 순서 부여

Queydsl 에서 null 데이터의 순서 위치를 처음으로 할지, 마지막으로 할지 지정해줄수 있다.

//회원이름이 null 인 경우를 위로 정렬
List<Member> result = queryFactory
        .selectFrom(member)
        .orderBy(member.username.asc().nullsFirst())
        .fetch();

//회원이름이 null 인 경우를 아래로 정렬        
List<Member> result = queryFactory
        .selectFrom(member)
        .orderBy(member.username.asc().nullsLast())
        .fetch();