구분 | Oracle | MySQL | 쿼리 비교 |
NULL값 확인함수 | NVL | IFNULL | (Oracle) SELECT NVL(USER_ID,'') FROM DEPT; (MySQL) SELECT IFNULL(USER_ID,'') FROM DEPT; |
현재날짜시간 확인 | SYSDATE | NOW() | (Oracle) SELECT SYSDATE FROM DUAL; (MySQL) SELECT NOW() FROM DUAL; |
날짜 String으로 변경 | TO_CHAR() | DATE_FORMAT() | (Oracle) SELECT TO_CHAR(REG_DATE, 'YYYYMMDD HH24MISS') FROM DUAL; (MySQL) SELECT DATE_FORMAT(REG_DATE, '%Y%m%d%H%i%s') FROM DUAL; |
요일변환 숫자범위 | 일~월(1~7) | 일~월(0~6) | (Oracle) SELECT TO_CHAR(SYSDATE, 'D') FROM DUAL; (MySQL) SELECT DATE_FORMAT(NOW(), '%w') FROM DUAL; |
문자와 문자 병합 | || | CONCAT() | (Oracle) SELECT USER_ID FROM DEPT WHERE USER_ID LIKE '%' || 'DEPT' || '%'; (MySQL) SELECT USER_ID FROM DEPT WHERE USER_ID LIKE CONCAT('%','DEPT','%'); |
형변환 | TO_CHAR, TO_NUMBER | CAST | (Oracle) SELECT TO_CHAR(1234) FROM DUAL; (MySQL) SELECT CAST(1234 AS CHAR) FROM DUAL; |
페이징처리 | ROWNUM | LIMIT | (Oracle) SELECT * FROM (SELECT ROWNUM, A.* FROM (SELECT * FROM DEPT) A) WHERE ROWNUM BETWEEN 0 AND 10; (MySQL) SELECT * FROM DEPT LIMIT 0, 10; |
시퀀스 다음번호 | NEXTVAL | CURRVAL | (Oracle) 시퀀스명.NEXTVAL (MySQL) 시퀀스명.CURRVAL |
참고
'SQL' 카테고리의 다른 글
Oracle PL/SQL if~else문 NULL 처리 (0) | 2024.04.15 |
---|---|
[REGEXP] MySQL, MariaDB - LIKE, IN 동시에 쓰는 방법 (0) | 2022.03.06 |