작성
·
744
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'