Oracle과 PostgreSQL 모두 SQL JOIN에서 Alias(별칭)를 쓰는 방법이 거의 같지만,
가장 큰 차이점은 "AS" 사용에 대한 허용/허용하지 않음 입니다.
| PostgreSQL | Oracle | |
|---|---|---|
| AS 허용 | O (동작함) | X (테이블/서브쿼리에서 AS 쓰면 오류) |
| AS 생략 | O (OK) | O (OK, 권장) |
FROM EQUIPMENT_CODE AS eq -- O
FROM EQUIPMENT_CODE eq -- O
FROM EQUIPMENT_CODE eq -- O
FROM EQUIPMENT_CODE AS eq -- X (Syntax error!)
FROM (SELECT * FROM t) AS sub -- O
FROM (SELECT * FROM t) sub -- O
FROM (SELECT * FROM t) sub -- O
FROM (SELECT * FROM t) AS sub -- X (Syntax error!)
양쪽 모두 JOIN 구문/ON 절은 동일합니다.
SELECT *
FROM (SELECT x FROM table1) AS a
JOIN (SELECT y FROM table2) AS b
ON a.x = b.y
SELECT *
FROM (SELECT x FROM table1) a
JOIN (SELECT y FROM table2) b
ON a.x = b.y
범용 SQL(양쪽다 쓸 때-)
→ (SELECT ...) 별칭, TABLE 별칭 방식 추천
PostgreSQL만 쓸 때
→ 둘 다 ok
조인/별칭은 거의 동일
유일한 차이점: Oracle은 AS 붙이지 마라!