분류 전체보기
-
MySQL의 LIMIT 기능을 Oracle에서 ROWNUM을 이용해 구현DataBase/Oracle 2018. 8. 13. 13:27
MySQL에는 Limit라는 기능이 있는데, Oracle에서 이와 같은 기능을 만들 필요가 있었다. MySQL의 Limit는 데이터 수에 원하는 만큼 제한을 둘 수 있는 기능이다. 1) 데이터를 5개만 가져옴 in MySQL 1SELECT * FROM demo_table LIMIT 5;cs 1-1) 데이터를 5개 이하만큼 가져옴 in Oracle 1SELECT * FROM demo_table WHERE ROWNUM
-
on duplicate key update(MySQL) Vs merge into(Oracle) 사용법DataBase/Oracle 2018. 8. 10. 16:48
위의 두 기능은 insert를 하려는데 이미 데이터가 있다면 update를 할 수 있는 function이다. 테이블 하나를 사용하는 것만 정리해둬야겠다.(아직까진 테이블 하나씩만 사용하고 있어서) MySQL의 경우, 123456789101112 INSERT INTO demo_table --테이블명 ( company_seq, --primary key company_name, company_emp_name ) VALUES( 9999, 'tistory', '조르바' )ON DUPLICATE KEY UPDATE -- primary key가 중복일 경우, 해당 primary row에 update company_emp_name = '초콜릿'Colored by Color Scriptercs Oracle의 경우, 12..
-
mySQL은 공백을 허용했지만, oracle은 공백을 허용하지 않았다.DataBase/Oracle 2018. 8. 9. 14:31
오늘 배운 것!은 mysql은 공백데이터도 무시하고 읽지만 oracle은 읽지 않는다. 예를 들어, 테이블 명: health | name | status | "조르바" "건강 "(큰 따옴표는 데이터를 강조하기 위함, 실제 데이터에는 (조르바 건강)으로 되있겠지?) "건강" 뒤에 공백이 하나 들어가있다. ("건강 ") 이럴 경우, select * from health where status = '건강'이라고 하면 mysql은 조회가 되지만, oracle은 조회가 되지 않는다.
-
MySQL(MariaDB)과 Oracle 쿼리 문법 비교DataBase/Oracle 2018. 8. 8. 17:40
기능 MySQL(MariaDB) Oracle Null일 경우 값 처리 IFNULL('컬럼 값', '대체 값') NVL('컬럼 값', '대체 값') 문자열 합치기 CONCAT('합칠 값1', '합칠 값2', '합칠 값3' ) CONCAT('합칠 값1', '합칠 값2') - 오라클의 경우 값 2개까지만 병합가능 또는 '합칠 값1'||'합칠 값2'||'합칠 값3' 데이터 1개만 보기 LIMIT 1 WHERE ROWNUM = 1 (where 조건 절 안에서) 시스템 현재 시간 NOW() SYSDATE alias 사용법 as 'alias 명' 또는 alias 명 또는 as alias 명 as alias명 또는 alias 명(자동 대문자 전환) 대소문자 구분한 값을 보고 싶을 경우, as "alias 명" 또는 "..
-
org.xml.sax.SAXParseException 에러 해결웹 개발/에러 해결 2018. 8. 7. 17:36
현재 회사에서 진행중인 업무는 패키지를 기존 MariaDB 버전에서 Oracle 변환 작업 중이다. 그래서 쿼리를 수정중인데, 위와 같은 에러가 떴다. 이는 부등호 표시를 파싱하는 중간에 에러가 나는 것으로 보인다. xml파일에서 부등호 표시를 직접적으로 쓰면 파싱이 되지 않는 것 같다. 그래서 해결법은 * 수정 전 1ROWNUM * 수정 후 1ROWNUM ]]>= 1cs 이렇게 하면 부등호가 원하는대로 파싱되어 결과를 볼 수 있다.