BackEnd/Querydsl

12. Querydsl SQL function

hanseom 2021. 7. 29. 21:11
반응형

[전체소스코드]

 

SQL function은 JPA와 같이 Dialect에 등록된 내용만 호출할 수 있다.

 

1. Replace

String result = queryFactory
          .select(Expressions.stringTemplate("function('replace', {0}, {1}, {2})", member.username, "member", "M"))
          .from(member)
          .fetchFirst();

// result : M1

 

2. lower

String result = queryFactory
          .select(member.username)
          .from(member)
          // .where(member.username.eq(Expressions.stringTemplate("function('lower', {0})", member.username)))
          /**
            * ansi 표준 함수들은 querydsl이 상당부분 내장하고 있다.
          */
          .where(member.username.eq(member.username.lower()))
.          fetchFirst();

// result : member1

반응형