인프런 커뮤니티 질문&답변

Brian님의 프로필 이미지
Brian

작성한 질문수

실전! Querydsl

서브쿼리 안에 groupby시 sequence number not allowed here

작성

·

310

0

안녕하세요

oracle db에서 서브쿼리 안에서 groupby를 했을떄 ORA-02287 sequence number not allowed here 오류가 나옵니다. 검색해보니

SEQUENCE를 사용할 수 없는 경우는 다음과 같다.

SELECT 문장의 경우에서

1. WHERE 절 안에서
2. GROUP BY나 ORDER BY 절에서
3. DISTINCT 절에서
4. UNION 이나 INTERSECT 나 MINUS 와 함께 사용 할때
5. 서브 쿼리 안에서

라고 하는데 제 경우에는 이 group by를 하고싶으면 어떻게 할수있나요?

감사합니다.

Integer sucessCount =0, 

JPQLQuery<Tuple> subQuery = JPAExpressions.select(
log.name,
log.content,
new CaseBuilder()
   .when(log.statusCode.eq("0")
   .then(sucessCount+1)
   .otherwise(successCount),
client.id
)
.from(log)
.leftJoin(client)
.on(client.name.eq(log.name))
//이 group by가 문제
.groupBy(log.name, log.content, client.id);

queryFactory.insert(stats)
.columns(
   stats.name,
   stats.content,
   stats.successCount,
   stats.clientId
)
.select(subQuery)
.execute();

답변 2

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. Brian님

다음을 참고해주세요.

https://www.inflearn.com/questions/34751

감사합니다.

0

Brian님의 프로필 이미지
Brian
질문자

target table에 sql trigger를 작동했고 db에 저 querydsl 쿼리처럼 sql script짜서 테스트 해서 insert가 잘되는데 querydsl로는 어떻게 해야될지 모르겠습니다 ㅜ

Brian님의 프로필 이미지
Brian

작성한 질문수

질문하기