본문 바로가기

반응형

개발

(88)
[ORACLE] TO_CHAR, TO_DATE, TO_NUMBER TO_CHAR 함수 ▶ 사용방법 SELECT TO_CHAR(칼럼명) FROM (테이블명) SELECT TO_CHAR(컬럼명, 포맷 설정) FROM (테이블명) ▶ 예시 아래의 쿼리는 MEMBER라는 테이블에 USER_NUM, JOIN_DATE라는 칼럼이 있다는 가정하에 작성되었다. --숫자를 문자로 SELECT TO_CHAR(12345) FROM DUAL; --날짜를 문자로 SELECT TO_CHAR(USER_NUM) FROM MEMBER; --날짜를 포맷형을 지정한 문자로 SELECT TO_CHAR(JOIN_DATE, 'YYYY-MM-DD') FROM MEMBER; TO_NUMBER 함수 ▶ 사용방법 SELECT TO_NUMBER(컬럼명) FROM (테이블명) ▶ 예시 SELECT TO_NUMBER('..
[ORACLE] EXTRACTVALUE 함수, EXTRACT 함수 EXTRACTVALUE 함수 ▶ 사용방법 EXTRACTVALUE(XML 형식의 값, XPath 조건식) XPath 조건식을 지정해서 해당하는 XML노드의 값을 반환 ▶ 예시쿼리 SELECT EXTRACTVALUE(BOOK_XML, '/STORE/BOOK/TITLE') FROM BOOK_LIST; ▶ BOOK_XML의 내용 어린 왕자 앙투안 드 생택쥐페리 9,800 ▶ 예시 쿼리 결과 어린 왕자 EXTRACT 함수 ▶ 사용방법 EXTRACT(XML 형식의 값, XPath 조건식) XPath 조건식을 지정해서 해당하는 XML노드의 값을 여러 개 반환할 때 사용 단, 레코드 1개가 여러 개의 노드를 가진 XMLType이라는 의미 ▶ 예시 쿼리 SELECT EXTRACTVALUE(BOOK_XML, '/STORE..
[ORACLE] NVL 함수, NVL2 함수 NVL 함수 ▶ 사용방법 NVL(칼럼명, 값이 NULL인 경우 리턴할 값) ▶ 예시 NVL(JOB, '없음') JOB이라는 컬럼이 NULL인 경우 '없음'이라는 값을 리턴해준다. ▶ 예시쿼리 아래의 쿼리는 EMP라는 테이블에 NAME, JOB이라는 칼럼이 있다는 가정하에 작성되었다. SELECT NAME, JOB, NVL(JOB, '없음') FROM EMP; ▶ 예시 쿼리 결괏값 NAME JOB NVL(JOB, '없음') 김자바 프로그래머 프로그래머 박씨 없음 이파이썬 없음 전디비 DBA DBA NVL2 함수 ▶ 사용방법 NVL2(칼럼명, 값이 NULL이 아닌 경우 리턴할 값, 값이 NULL인 경우 리턴할 값) ▶ 예시 NVL2(JOB, '직업 있음', '없음') JOB이라는 칼럼이 NULL이 아닌 경우..
[ORACLE] DECODE 함수, CASE WHEN 함수 DECODE 함수 사용법 ▶ 사용방법 DECODE(칼럼명, 조건, 결과, 그 외) ▶ 예시 DECODE(ADDRESS, 'GD', '강동', 'GS', '강서', 'GN', '강남', 'GB', '강북', '기타') 위의 코드를 해석해보면 해당 테이블에 ADDRESS라는 칼럼의 값이 'GD'면 '강동'이라는 값을 리턴하고, 'GS'면 '강서'라는 값을, 'GN'이면 '강남'이라는 값을, 'GB'면 '강북'이라는 값을 리턴하고 앞의 조건에 해당하는 값이 없다면 '기타'라는 값을 리턴한다는 뜻이다. ▶ 예시 쿼리 아래의 쿼리는 TMP라는 테이블에 ADDRESS라는 칼럼이 있다는 가정하에 작성되었다. SELECT ADDRESS, DECODE(ADDRESS, 'GD', '강동', 'GS', '강서', 'GN',..
[ORACLE/MYSQL] 자동 커밋 끄는 법 Oracle SQL Developer에서 자동 커밋 해제 SQL Developer에서는 기본적으로 자동커밋이 해제되어 있는 경우가 많다. 하지만 오토커밋을 켜 두면 분명 편리한 점도 많다. 나의 경우는 AUTO COMMIT으로 인해 ROLLBACK이 어려운 상황이 생길 경우를 대비해 자동 커밋은 항상 꺼두는 편이다. 1. SQL 상단메뉴에서 도구 - 환경설정으로 들어간다. 2. 환경설정 창에서 데이터베이스 메뉴 옆의 '+' 버튼을 누른다. 3. '+'해서 나온 메뉴 중 객체 뷰어를 더블클릭한다. 4. 데이터 편집기 옵션 - 커밋 옵션 부분의 자동 커밋 설정 체크박스를 해제하면 자동 커밋 해제 가능! MYSQL에서 자동 커밋 해제 나의 경우는 MYSQL는 거의 사용하는 경우가 적다 보니 쿼리 박스에서 사용..
[ORACLE] SELECT문에서 숫자 및 문자 원하는 데이터 출력하기 아래의 쿼리문들은 MEMBER라는 테이블에 ID라고 하는 칼럼이 있다는 가정하에 작성되었다. SELECT문에서 한글 포함된 데이터 제거하기 SELECT * FROM MEMBER WHERE LENGTH(ID) = LENGTHB(ID); SELECT문에서 숫자 포함된 데이터만 추출하기 SELECT * FROM MEMBER WHERE REGEXP_LIKE ( ID, '^[[:digit:]]+$' ); SELECT문에서 숫자 포함된 데이터 제거하기 SELECT * FROM MEMBER WHERE ID NOT IN ( SELECT ID FROM MEMBER WHERE REGEXP_LIKE ( ID, '^[[:digit:]]+$' ) ); SELECT문에서 대문자인 데이터만 추출하기 SELECT * FROM MEM..
[SPRING] 파라미터 속 json 배열 꺼내쓰기 일반적인 파라미터를 받을 때 @RequestMapping로 URL과 그 파라미터를 받아올 때 파라미터가 각각 있다면 아래와 같이 @RequestParam 어노테이션을 써서 받아오면 된다. @RequestMapping(value="URL이 들어가는 자리") public void MemberInfo( @RequestParam(value="site") String site, @RequestParam(value="id") String id, @RequestParam(value="pw") String pw ) throws Exception { } json, json 배열로 파라미터를 받을 때 하지만 이 파라미터를 json형태로 받는 경우에는 @RequestBody 어노테이션을 써서 받아오면 된다. @Request..
[SPRING] Mybatis에서 insert할 때 null 처리하기 스프링에서 마이바티스를 이용할 때 파라미터 값이 null인 경우 insert, update 할 때 에러가 발생한다. 이런 경우 null값으로 처리해줄 수 있는 방법이 있다. insert, update 구문에 jdbcType 설정하기 예를 들어 EMP라는 테이블에 EMPNO, ENAME, JOB, SAL이라는 칼럼이 있다고 가정한다. 아래의 값을 EMP에 insert 하는 경우 sal의 값은 null이다. int empno = 1; String ename = "WENDY"; Stirng job = "DBA" String sal; Mapper XML 파일에서 위의 값을 insert하는 쿼리를 작성할 때 아래와 값이 null값이 들어오게 되는 파라미터 값에 데이터 타입을 명시하면 에러없이 실행된다. INSER..

반응형