본문 바로가기
반응형

내가 공부하려고 올리는100

오라클 - 존재하지 않는 컬럼의 값을 UNION 하는 방법 오라클의 집합 연산자를 사용할 때 집합 연산자로 연결된 SELECT문들은 컬럼의 수와 데이터 형이 순서대로 일치해야 합니다. 따라서 동일한 컬럼이 존재하는 경우에 다음과 같이 합집합을 이용한 데이터 SET을 만들 수 있습니다. 하지만 이런 경우는 어떨까요? 우선, TCOM 테이블을 확인해보겠습니다. TCOM 테이블의 전체 데이터는 위와 같습니다. 이번엔 TEMP 테이블을 확인해보겠습니다. TEMP 테이블의 전체 데이터는 다음과 같습니다.(일부 생략) 이런 테이블에서 동일한 EMP_ID를 사용하고 TEMP 테이블의 SALARY, TCOM 테이블의 COMM을 사용해 합집합을 하고 싶다면 어떻게 해야 할까요? 우선 위와 같은 방식으로 합집합을 사용해보겠습니다. 다음과 같이 동일한 컬럼명을 이용해 합집합 처리를.. 2021. 11. 8.
브라우저 동작 원리(쉽게 알아보기) - CSS 파싱/렌더 트리/스타일 계산(7) 이 글은 이스라엘 개발자 탈리 가르시엘(Tali Garsiel)이 html5rocks.com에 게시한 "How Browsers Work: Behind the scenes of modern web browsers"를 인용하고 있습니다. 아무것도 모르는 초보자의 시선에서 하나하나 모르는 용어는 용어대로 찾아가면서 정리해보는 글입니다. 저와같이 아무것도 모르는 초보자를 기준으로 글을 작성했습니다. 부디 이 글에 마지막에는 글을 쓰고 있는 저도, 독자도 어렴풋이라도 브라우저가 어떻게 동작하는지 이해할 수 있었으면 좋겠습니다. 🙏 이 글은 브라우저 동작 원리 7편입니다. 다른 편은 아래 링크나 블로그에서 참조해주세요! 브라우저 동작 원리 1편 브라우저 동작 원리 2편 브라우저 동작 원리 3편 브라우저 동작 원리 .. 2021. 11. 7.
오라클 - 날짜와 시간을 더하고 빼기 오라클에서 날짜나 시간(시, 분, 초)을 더하고 빼는 방법을 알아보겠습니다. 우선 TO_CHAR 함수를 활용해 현재 시간을 알아보겠습니다. TO_CHAT함수는 선택된 날짜나 시간을 본인이 원하는 형식으로 출력할 수 있게 해주는 함수입니다. 현재 시스템 일자를 확인할 수 있는 SYSDATE 가상 컬럼을 이용해 현재 날짜를 확인해보겠습니다. 다음과 같은 실행문을 작성하면, 다음과 같은 결과를 얻을 수 있습니다. 'yy'는 Year, 'mm'은 Month, 'dd'는 Day를 의미합니다. SYSDATE에 숫자를 더하면 어떻게 될까요? 기본적으로 SYSDATE에 더해지는 숫자는 '일자'입니다. +1을 더하면 값이 '21년11월04'일로 바뀝니다. 따라서 30일 넘어가는 값을 더하게 된다면, '월'이 변화하게 됩.. 2021. 11. 3.
오라클 - ROUND와 TRUNC 함수의 차이 오라클의 ROUND()와 TRUNC() 함수를 동일한 문자열을 통해 차이점을 비교해보겠습니다. '1234.56'이라는 문자열에 ROUND() 함수를 사용해보겠습니다. 다음과 같이 ROUND() 함수를 활용한다면, 결과는 다음과 같습니다. ROUND 함수는 숫자가 양수이면 소수점 아래를, 숫자가 음수이면 소수점 위를 의미하고, 숫자를 입력하지 않으면 소수점 첫째 자리를 의미합니다. ROUND 함수는 반올림 함수이기 때문에 결과가 위와 같이 나오게 됩니다. 그렇다면 TRUNC() 함수를 사용한다면 어떨까요? 동일한 문자열에 TRUNC() 함수를 사용해보겠습니다. 결과는 다음과 같습니다. 기본적인 내용은 ROUND 함수와 동일하지만 TRUNC 함수는 버림에 사용하는 함수이기 때문에 ROUND 함수와 달리 반올.. 2021. 11. 3.
오라클 - LENGTH 함수를 이용하여 한글의 글자 수 알아내기 오라클에서 LENGTH 함수는 주어진 문자열의 길이를 리턴하는 함수입니다. LENGTH 함수는 두 종류가 있습니다. 일반 LENGTH : 문자 단위로 처리 LENGTHB : 바이트 단위로 처리 따라서 같은 글자에 LENGTH와 LENGTHB를 적용한 결과는 다릅니다. 예를 들어 보겠습니다. 다음 실행문을 실행시키면, 다음과 같은 결과가 나옵니다. 그렇다면, LENGTHB의 실행 결과는 어떨까요? 앞선 실행문에서 LENGTH를 LENGTHB로 바꾸면 위와 같이 결과가 13에서 20으로 바뀌는 것을 확인할 수 있습니다. 이는 BYTE로 인식할 경우 한글 한 문자를 2 BYTES로 인식하기 때문입니다. 이러한 차이점을 이용해 특정 문자열에 한글이 몇 글자 있는지 알아낼 수 있습니다. 위와 같이 LENGTHB .. 2021. 10. 28.
오라클 - Row 단위 자료를 Column 단위로 변경하기 실습 테이블을 조회해보겠습니다. SELECT * FROM sam_tab02를 입력한 결과는 다음과 같습니다. 다음과 같은 조회 결과를 아래와 같은 테이블로 조회하는 방법을 알아보겠습니다. 우선 행에 번호를 매기겠습니다. 위와 같은 명령어를 입력하여, 다음과 같은 테이블을 얻었습니다. 저희가 원하는 결과물에서는 가장 위의 값 'F107'부터 가장 아래 값 'F125'까지 Row를 4개씩 묶어서 Column으로 변경하는 것입니다. 따라서, RNO를 4개씩 동일한 수로 묶습니다. 이때는 CEIL 함수를 사용합니다. CEIL함수는 값을 올리는 함수로 RNO의 값을 4로 나눈 값을 올림 하면 4개씩 동일한 값을 얻을 수 있습니다. 다음과 같이 명령어를 입력하면 다음과 같은 실행결과를 얻을 수 있습니다. 자 이제 .. 2021. 10. 27.
반응형