SQL 문제

My SQL 과 ORACLE 문법 차이

redknife 2022. 12. 3. 23:40

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/132203

My SQL 은 date 형식으로 변환할떄 DATE_FORMAT(변환할 날짜 데이터, '%Y-%m-%d') 로 작성을 해야하지만 Oracle 에서는 to_char(변환할 날짜 데이터,'YYYY-MM-DD') 로 변환한다.

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/131120
My SQL 은 날짜 데이터의 년이나 달 데이터만 가져오려면 month, year함수를 사용하지만 Oracle 에서는 month,year함수가 없어 to_char(변환할 날짜 데이터,'MM') 로 변환한다.

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/131118?language=oracle
My SQL 은 테이블 별칭을 정할때 as를 써도되고 안써도 되지만 Oracle 에서는 테이블 별칭을 붙일때 as를 붙이면 문법요류가 발생한다.

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/59405?language=oracle 

My SQL 상위 몇개 값만 가져오고 싶을떄 limt 함수를 사용하지만 Oracle 에서는 limit함수 존재하지 않아 where 절에 rownum를 사용하여 원하는 수만큼의 데이터를 가져와야한다. 근데 where절에 사용을 하다보니 order by 절이 적용이 되기전에 추출을 하기 때문에 from 절에 서브쿼리를 사용하여 정렬조건을 미리 적용시켜주어야 한다.