심플하고 차분하게
[DATABASE] SEQUENCE, INDEX
■ 시퀀스란? 오라클에서 순서를 지정해주는 객체 **오라클에서만 사용 가능 [1] 시퀀스의 생성 CREATE SEQUENCE seq_테이블명_idx START WITH 1 INCREMENT BY 1; -- 또는 CREATE SEQUENCE seq_테이블명_idx; [2] 데이터 추가 시 시퀀스 추가 - 시퀀스명.nextVal INSERT INTO sungtb VALUES(seq_sungtb_idx.nextVal, '일길동', 90, 80, 70); [3] 시퀀스의 삭제 DROP SEQUENCE seq_sungtb_idx ■ 인덱스란? 데이터베이스에서 데이터를 빠르게 탐색하기 위해 붙인 색인(포인터) 인덱스를 사용해야 하는 경우 - 데이터 양이 많고 검색이 수정보다 빈번한 경우 - 도메인의 값이 다양한 값..
[DATABASE] DB모델링, 정규화와 이상현상, 역정규화
■ DB모델링 - ERD란? Entity Relationship Diagram, 개체 관계도라 하며, 개체들 간의 관계를 나타내는 다이어그램이다. - DB 모델링에 대한 자세한 내용은 아래 포스팅 참조 https://mangkyu.tistory.com/27 [Database] 6. 데이터 모델링(Data Modeling) [ 본 사진은 쉽게 배우는 오라클로 배우는 데이터베이스 개론과 실습 ppt에서 캡처했습니다. ] 이번 장에서는 데이터 모델링(Data Modeling), ER 모델(ER Model)에 대해 알아보겠습니다. 1. 데이터 모델링 mangkyu.tistory.com - DB 모델링 툴 - 윈도우용툴 : EXERD, ERWIN (erwin.com) *erwin이 가장 자주 쓰는 툴이라고 한다...
![[DATABASE] 뷰 (VIEW), 인라인 뷰](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FbYi33U%2FbtrzQgO7gkq%2FAAAAAAAAAAAAAAAAAAAAAHihen8c_eXfK8ASRJ1D2SBEzC3KSgbH6qvGNt3Dkg8P%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1751295599%26allow_ip%3D%26allow_referer%3D%26signature%3Do7LkAkM5VOXdQK4f%252BUNRAbXmZ3w%253D)
[DATABASE] 뷰 (VIEW), 인라인 뷰
■ 뷰(VIEW)의 정의 - 뷰는 가상 객체로, 하나 이상의 테이블 또는 뷰의 데이터를 볼 수 있게 한다. - 실제로 테이블은 아니지만 테이블처럼 사용 가능 - 다른 뷰를 참조해 새로운 뷰를 생성할 수 있다. ■ 뷰(VIEW)의 사용 목적 - [1] 편리성 : 복잡한 명령/수식 등을 간결하게 사용 가능 - [2] 보안성 : 중요 데이터를 외부로 제한적으로 제공 * DBO의 원천데이터를 선별적으로 가공하여 사용자에게 (조회)권한 부여 ■ 뷰(VIEW)의 실제 형태 - .bat 파일과 같이 실제로는 Select ~ from SQL문이 들어가있는 형태 ■ 뷰(VIEW)를 생성할 수 있는 권한 부여 *최고 권한자만 권한을 부여할 수 있다. grant create view to 계정 ■ 뷰(VIEW)의 생성 및 ..
[DATABASE] DECODE, CASE~END 문
■ DECODE 문 형식 : DECODE(필드(연산식), 비교값1, 결과값1, 비교값2, 결과값2, 비교값3, 결과값3, 기본값) CREATE TABLE MEMBER ( IDX NUMBER(38), DEPTNO NUMBER(10), NAME CHAR(4 CHAR), GENDER CHAR(3 CHAR) ); /* INSERT 생략 */ SELECT IDX, DEPTNO, NAME, DECODE(DEPTNO, 10, '총무부', 20, '영업부', 30, '전산실', 40, '관리부', '경리부') AS DEPTNAME; ■ CASE ~ END 문 CASE ~ END -- 형식 1 : 하나의 조건에 대한 값을 비교하여 결과를 얻는다. CASE 필드(연산식) WHEN 비교값1 THEN 결과값1 WHEN 비교값..
![[DATABASE] 정렬(ORDER NY) 및 그룹 통계(GROUP BY)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fw92D8%2FbtrzNBqV753%2FAAAAAAAAAAAAAAAAAAAAAFRvh-AjLRlrRdEvCq0rDAFBwRIrbT9SY3EkjsGgVqQQ%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1751295599%26allow_ip%3D%26allow_referer%3D%26signature%3DEJtd%252Bjut63AhcHEjZzpNL3pcr7k%253D)
[DATABASE] 정렬(ORDER NY) 및 그룹 통계(GROUP BY)
■ 정렬 (ORDER BY) ORDER BY 필드 [asc | desc] 필드를 기준으로 정렬 ORDER BY 필드1 [asc | desc], 필드2 [asc | desc] 필드1을 기준으로 1차 정렬 후, 필드2를 기준으로 2차 정렬 * ASC = ASCENDING (오름차순), DESC = DESCENDING (내림차순) ■ 그룹 통계 (GROUP BY) GROUP BY 필드 필드의 분류를 기준으로 그룹핑 * SELECT ~ FROM 사이에 들어올 수 있는 항목, GROUP BY 컬럼, 통계함수(COUTN,SUM,AGV,MIN,MAX..) [예제1 _ 부서별 인원수, 급여 합계를 구하는 쿼리] SELECT DEPTNO 부서번호, AVG(SALARY) 급여평균, MAX(SALARY) 최고급여, MIN(..
[자료구조] 스택
[자료구조 알고리즘] Stack 구현하기 in Java - YouTube [ 스택의 활용 예 : 출처 자바의 정석 ] 수식 계산, 수식괄호검사, 워드프로세서의 undo/redo, 웹브라우저의 뒤로/앞으로 ★ 문제 : 10828번: 스택 (acmicpc.net) 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net ★ 스택 단계 (acmicpc.net) 스택 단계 주어진 문자열이 올바른 괄호열인지 판단하는 문제 www.acmicpc.net ■ 스택을 생성해보는 예제 import java.io.Buff..
[DATABASE] SELECT쿼리 진행 순서, 서브쿼리
■ SELECT 쿼리 진행 순서 FROM, JOIN > WHERE, GROUP BY, HAVING > SELECT > ORDER BY > DISTINCT > LIMIT ▼ 자세한 진행 순서 [더보기] 더보기 1. FROM과 JOIN - JOIN이 먼저 실행되어 데이터가 SET으로 모아지게 된다. 서브쿼리도 함께 포함되어 임시 테이블을 만들 수 있게 도와준다. 2. WHERE - 데이터셋을 형성하게 되면 WHERE의 조건이 개별 행에 적용된다. WHERE절의 제약 조건은 FROM절로 가져온 테이블에 적용될 수 있다. 3. GROUP BY - WHERE의 조건 적용 후 나머지 행은 GROUP BY절에 지정된 열의 공통 값을 기준으로 그룹화된다. 쿼리에 집계 기능이 있는 경우에만 이 기능을 사용해야 한다. 4..
[DATABASE] 중복 값 제거 _ DISTINCT
■ 중복값 제거 DISTINCT - 하나의 컬럼의 데이터를 뽑아낼 때, 중복값을 제거하고 출력 SELECT DISTINCT AGE FROM MEMBER;
![[DATABASE] 함수](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fby038Z%2FbtrzqmCgCUL%2FAAAAAAAAAAAAAAAAAAAAAAB5zn9U2g4CzvFUdqNTAgSMOCSyu4oArMp6MeFM0P7j%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1751295599%26allow_ip%3D%26allow_referer%3D%26signature%3D2ads8ZXeLHD9tDpGCvQDLJ7j2cM%253D)
[DATABASE] 함수
■ 변환 함수 https://webstudynote.tistory.com/60 함수 내용 TO_CHAR(number) TO_CHAR(number, format) TO_CHAR(date, FORMAT) DATE형, NUMBER형을 문자 타입으로 변환 TO_DATE(char, format) CHAR, VARCHAR2형을 DATE 타입으로 변환 TO_ NUMBER(char) CHAR, VARCHAR2의 데이터 타입을 숫자형식으로 변환 더보기 출처 : http://www.gurubee.net/lecture/1027 - 주요 숫자 포맷과 날짜 포맷을 여기서 확인할 수 있다. ■ 문자열 함수 함수 내용 CONCAT('www.' , 'naver.com') 문자열 결합 연산자 || 와 동일한 기능을 하는 함수 INIT..