• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

SELECT에서 만든 field, SELECT에서 재사용하기

21.07.19 18:50 작성 조회수 557

2

안녕하세요, SELECT에서 만든 field, SELECT에서 재사용할 수 있나요?

강의 마지막 부분에 언급하신게 굳이 서브쿼리로 묶을 필요 없다고 하셨습니다만, 서브 쿼리로 묶지 않으면 아래에서 활용이 불가능하던군요. cancel_count를 참조할 수 없다는 에러가 뜨네요.

서브 쿼리를 쓰지 않고 이 문제를 풀 수 있나요?

답변 1

답변을 작성해보세요.

1

직접 만든 cancle_count와 total_count 컬럼명을 같은 테이블 내 연산에 곧바로 사용하는 것은 불가능합니다. 

cancle_count, total_count라고 붙여준 이름이 아니라 그에 해당하는 연산식을 ROUND 안에 넣어주시면 서브쿼리 과정을 거치지 않고 곧바로 결과값을 도출할 수 있습니다.  

아래 쿼리 참고해 주세요 :)

SELECT request_at AS Day
               , ROUND(SUM(CASE WHEN status != 'completed' THEN 1 ELSE 0 END) / COUNT(*), 2) AS'Cancellation Rate'