본문 바로가기

IT/Oracle24

오라클 CHAR, VARCHAR2 차이 알아보기 TEST_TABLE에 크기5, CHAR 타입의 CHAR_TEST 동일한 크기에, VARCHAR2 타입의 VARCHAR_TEST를 만들어 보았다 이후 CHAR 타입과 VARCHAR2 타입에 동일하게 AA를 넣어 보았는데 이후 CHAR_TEST와 VARCHAR_TEST의 길이를 조회해 보니 길이가 다르게 나온 것이 보이는데 'AA'를 넣었음에도 CHAR_TEST의 길이는 5인 것이 보인다 왜냐면 CHAR 타입은 크기에 부족하게 넣어도 나머지 칸은 공백으로 채워버리기 때문이다 즉 CHAR_TEST를 조회해 보면 공백이 보이지 않아 그렇지 'AA' 가 아닌 'AA ' 이렇게 나온다는 것이다 테이블에서 데이터 타입을 설정할 때 CHAR 타입은 반드시 숫자가 꽉 차게 들어가게 설계해야 하며 VARCHAR2로 설정해.. 2019. 7. 10.
오라클 MERGE INTO 알아보기 일단 MERGE INTO를 사용하기 전에 이렇게 생긴 테이블이 있다는 것을 알아두자 MERGE INTO는 조건을 하나 주고 맞으면 ~하고 아니면 ~한다 이런 내용인데 IF ELSE가 생각나지 않나 MERGE INTO는 조건에 맞으면 UPDATE 아니면 INSERT 이런 내용으로 주로 사용된다 예제로 한번 확인해보자 MERGE INTO로 뭔가 할 테이블을 정하고 USING으로 비교할 테이블을 정한다 자기 자신과 비교할 경우에는 DUAL을 사용해 주면 된다 이후 ON으로 비교 조건문을 만들고 (중복 방지를 위해 KEY를 비교해야 한다..) 조건에 충족했을 경우에는 WHEN MATCHED THEN 조건에 충족하지 않았을 경우에는 WHEN NOT MATCHED THEN 으로 끝낸다 이후 실행해 보면 NAME이 .. 2019. 5. 27.
오라클 INSTR로 문자열 위치 확인하기 이번에는 오라클 INSTR에 대해 알아본다 INSTR이란? 컬럼에서 내가 지정한 문자열이 몇번째 위치에 있는지 표시해 주는 것인데 위의 테이블을 보면 ABCDE, EDCBA를 각각 삽입한 것이 보인다 이제 두 행에서 A의 위치가 알고 싶은데 첫 행은 1, 두번째 행은 5다 INSTR를 사용해서 한번 위치를 확인해 보자 INSTR은 INSTR(컬럼명,'찾으려는 문자열') 이런 식으로 사용하는데 위의 내용을 보면 NAME 컬럼 안에서 'A'의 위치를 찾겠다 이 말이다 출력된 예를 보면 각각 A의 위치인 1과 5가 출력되는 것을 확인할 수 있다 2019. 3. 27.
오라클 TRIM, LTRIM, RTRIM 으로 공백 제거하기 여기 근본없게 테이블에 하하하, 20을 넣어 보았는데 띄어쓰기가 들어갔기 때문에 조회 시에는 띄어 쓴 것을 없애고 싶다 TRIM, LTRIM, RTRIM 을 통해 조회 시에 앞 뒤의 공백을 없애보자 먼저 TRIM인데 TRIM은 문자열의 앞 뒤의 공백을 제거하는데 사용하는데 예제를 통해 알아보자 TRIM은 TRIM(컬럼명) 이런 식으로 사용하는데 INSERT 해둔 컬럼이 없다면 DUAL을 사용해 이런 식으로 해도 상관없다 어쨌든 TRIM을 사용하니 앞뒤 공백이 없어진 것이 보인다 다음은 LTRIM인데 딱 감이 오지 않는가? 왼쪽의 공백만 없애준다는 얘기다!! TRIM과 동일하게 LTRIM(컬럼명) 이런 식으로 사용하는데 왼쪽에 있는 공백들이 없어진 것이 보인다 마지막으로 RTRIM을 사용해 보자 LTRIM.. 2019. 3. 27.
오라클 DECODE 알아보기 이번에는 오라클 DECODE 사용에 대해 알아보자 DECODE란 특정 조건에 해당하면 특정 값을 설정하는데해당 테이블에서 M이면 남자, F면 여자라는 컬럼을 추가하려고 한다 DECODE는 다음과 같이 사용한다DECODE(컬럼명, 조건1, 조건1에 맞을 시 값,조건2, 조건2에 맞을 시 값, 맞는 조건이 없을 시 값); 설명을 보고 예제를 보면 이해가 한번에 될텐데예제를 한번 보면.. GENDER가 M이면 남자, F면 여자둘다 해당하지 않으면뭣도아님으로 출력하게 했는데 출력이 잘 되는 것이 보인다 조건은 반드시 두개만 사용해야 하는 것이 아니라하나만 사용해도 된다 DECODE(GENDER, 'M', '남자', '그외');이런 식으로 해도 된다는 것이다 매우 간단하기 때문에 예제 하나만으로도 이해가 되는데그.. 2019. 3. 25.
오라클 NVL, NVL2 알아보기 오늘은 오라클의 NVL에 대해 알아보자 먼저 NVL을 사용하기 전에HUMAN_TABLE을 만들었는데 보면 이름과 나이 컬럼이 있는데넣다가 뇌가 빠졌는지 SELECT를 해 보니중간 중간 빈 칸들이 보인다이러한 빈 칸들은 NULL 이라고 부르는데 0도 아니고 아무것도 안 들어있다는 뜻이다이걸 그냥 사용하게 되면 계산도 안되다보니 에러가 날 확률이 높은데 NVL을 통해서 NULL을 다른 값으로 변경해줄 수 있다 사용하는 방법은 NVL(컬럼명, NULL일 시 값)이렇게 사용하는데 예제를 통해 한번 확인해보자 NVL을 사용해서 NAME이 NULL일 때에는 홍길동AGE가 NULL일 때에는 20을 주도록 했는데 아까 위의 이빨빠진 테이블과 비교해보면NULL이었던 컬럼 부분이 홍길동과 20으로 채워진 것이 보인다 이제.. 2019. 3. 25.