젠장... 먼가 싶었다.

select * from emp as e where e.ename='JACK';     

이 SQL문이 이상하다고 느낀 적이 있는가?

그러나 오라클에서는 조금 달랐다.

select * from emp e where e.ename='JACK';     

즉, Table alias 에서 'as' keyword가 없다.

결론은???

오라클이 남들에 비해 늦게 표준을 적용한다는...

ㅋㅋ 찾아보기 전에 강사에서 물어봤더니... 단호하게 table alias는 'as' 붙이면 안됩니다. 그러는거다.

"왜요?" ... " 그냥 안됩니다."
"원래 SQL에는 as를 쓸수 있고, 생략이 가능한 걸고 알고 있는데... 오라클에서만 먼가 다른건가요?"..." table alias 사용시에는 'as' 쓰면 안됩니다."

"... 네..."

젠장. 그래서 혼자 찾았다. 근데, 많은 사람들이 궁금하지 않았는지... 별루 자료가 없더만...

결국 찾았다!~ 쿄쿄

SQL-92에서는 table alias에 'as' keyword를 사용하지 못하는 것으로 정의 되어 있다.

후에 정립된 SQL-99나 SQL-2003의 경우에는 'as' keyword를 사용할수도, 생략할 수도 있는 것으로 되었다.

근데... 남들 다 SQL-99 이상을 적용했는데... 오라클만 SQL-92를 기초하고 있다.

시대에 뒤쳐지는 오라클... 에휴...


  1. Ryu 2011.02.10 17:24

    as 안 붙이고 짜는게 더 편해.

  2. Favicon of https://sleepyeyes.tistory.com BlogIcon 조는중 2019.12.09 07:30 신고

    저도 문득.. 습관적으로 as 붙이다가 안되서 확실히 찾아보고자 했는데 감사합니다 ^:^

+ Recent posts