🐢🐢꼬부기 LV.2 | 실습•에러/🛡️껍질에 숨기(에러해결)

ORA-00923 : FROM 키워드가 필요한 위치에 없습니다

서화 2025. 12. 13. 19:38

🐞FROM 키워드가 필요한 위치에 없습니다 🐞

리뷰테이블 페이지네이션 쿼리문 테스트중에 발생한 에러다

🔎원인분석

해당에러는 오타,세미콜론,컴마,띄어쓰기에 문제가있는 경우에 발생하는 에러이다 

즉 SELECT 절이 완전히 종료되지 않았는데 FROM절을 실행하려고 했기때문이다

현재 페이지네이션 쿼리문 구조

SELECT 
    REVIEW_PK,
    ITEM_PK,
    REVIEW_TITLE,
    REVIEW_CONTENT,
    REVIER_STAR
    
FROM (
    SELECT 
        R.REVIEW_PK,
       	R.ITEM_PK,
        R.REVIEW_TITLE,
        R.REVIEW_CONTENT,
        R.REVIEW_STAR
       
        ROW_NUMBER() OVER (
            ORDER BY REVIEW_PK DESC
        ) AS RN
    FROM REVIEW
   
    WHERE ITEM_PK ='1'
)

WHERE RN BETWEEN '5' AND '5';

🛠️해결방법

내가 생각했을때 의심되는 포인트가 4가지인데

1. FROM절안에 R.REVIEW_STAR 옆에 콤마 없음

부적합한 식별자라는 에러를 만남

2.SELECT절에 있는 REVIEW_STAR옆에 콤마없음

누락된 표현식이라고 에러남

3.WHERE RN BETWEEN과 AND에 숫자 5를 문자열로 적었기 때문에?

4.주석제거한 자리를 공백으로 남겨놔서 인가? 

3,4번 모두 에러 해결 안됨

그래서 찾아본 결과 내가 1번에서 실행한  FROM절 안에 R.REVIEW_STAR 옆에 콤마가 없어서

SELECT절이 종료가 안된상태에서 FROM절을 실행하려고 한게 맞았다

 R.REVIEW_STAR,

그렇다면 올바른 위치에 콤마를 찍었는데 왜 부적합한 식별자라는 에러가 났을까?

이유는 바깥 셀렉트문의 컬럼명에 오타가 있었기 때문이다 

 REVIER_STAR

부적합한 식별자 에러떳을때 바깥 셀렉트문의 컬럼명도 한번 봤으면 알았을텐데 오타가 있을 거라고는 생각을 못해서 찾는데 시간이 좀 걸렸다

따라서 바깥셀렉트문의 오타를 수정하면 정상적으로 실행된다

 REVIEW_STAR

✔️결론

오타를 잘 확인하자!