일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 프로그래머스
- 락
- 쓰레드
- 파일시스템 구현
- 그리디알고리즘
- DirectX12
- 운영체제
- 컨디션 변수
- 병행성
- codility
- DirectX 12
- 알고리즘
- Direct12
- 다이나믹프로그래밍
- 백준
- 렌더링 파이프라인
- 다이나믹 프로그래밍
- 자료구조
- I/O장치
- 영속성
- 멀티쓰레드
- 스케줄링
- 디자인패턴
- 타입 객체
- OS
- 그리디 알고리즘
- 멀티프로세서
- 동적계획법
- 병행성 관련 오류
- directx
- Today
- Total
목록DataBase (23)
기록공간

게시판을 만든다고 했을때, 게시판을 구분하기위해 ID를 정한다고 가정하자. 이 ID는 1부터 게시물이 생성될때 부여하며 1씩 증가한다. SQL에서 이러한 기능을 제공하는 쿼리문은 대표적으로 SEQUENCE가 있다. SEQUENCE 시퀀스는 자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 기능 중 하나이다. 보통 Primary Key (PK, 기본키) 값에 중복값을 방지하기 위해 사용한다. 예를들어 게시판을 추가할 때 가장 큰 id 값에 +1을 해주는 로직을 짤 필요없이 시퀀스를 사용하면 자동으로 +1을 해주기 때문에 매우 편리하다. 시퀀스를 사용하기 위해서는 시퀀스를 생성해주어야 한다. 다음과 같은 형식으로 만든다. CREATE SEQUENCE [시퀀스 명] START WITH [시작숫자] --..
서브쿼리는 특정 테이블을 사용자의 설정에 맞게 재정의 할 수 있도록 해주는 기능이다. 쿼리문 안에 소괄호를 이용해 또 다른 쿼리문을 작성함으로써 그 쿼리문에 해당하는 정보를 이미 만들어 놓은 테이블처럼 사용할 수 있다. 예를들어 다음과 같이 EMP 테이블에서 각 직원의 연봉을 구하는 쿼리문을 작성해야 한다고 가정해보자. 하지만 테이블에는 급여(SAL) 정보밖에 존재하지 않는다. 그러면 쿼리문은 다음과 같을 것이다. SELECT ENAME "사원이름", DEPT "부서" , (SAL * 12 + BONUS) "연봉" FROM EMP; 정말 간단해 보인다. 하지만 WHERE 절을 추가하면 어떨까? 연봉이 1000만에서 2000만 사이인 사람을 구한다고 해보자. 쿼리문은 다음과 같다. SELECT ENAME ..

중첩 함수 오라클에서는 그룹함수를 2번까지 중첩해서 사용할 수 있다. (MSSQL은 이마저도 불가능) 다음과 같은 정보를 담고 있는 EMP 테이블이 있다고 가정하자. 그리고 EMP 테이블에서 모든 직원들의 급여를 부서별로(DEPTNO) 합계를 내려고 한다면, 쿼리문은 다음과 같다. SELECT SUM(SAL) FROM EMP GROUP BY DEPTNO; 그렇다면 이 부서별 급여 합계 중 가장 큰 값을 구하고 싶을때에는 어떻게 해야 할까? 최대값을 구하기 위해서는 함수 MAX() 를 사용해야 할 것이다. 그렇기 때문에 불가피하게 SUM() 함수와 함께 중첩하여 사용해야 한다. SELECT MAX(SUM(SAL)) FROM EMP GROUP BY DEPTNO; RANK(), DENSE_RANK() 의 다른..

SELECT문은 테이블이나 뷰 내에 있는 데이터를 검색하기 위해서 사용하는 쿼리문이다. 기본적으로는 다음과 같이 사용한다. SELECT [찾을 속성 이름] FROM [테이블 이름] 예를들어 다음과 같은 테이블을 생성하고 데이터를 추가했다고 해보자. CREATE TABLE EMP ( EMPNO NUMBER(4) CONSTRAINT PK_EMP PRIMARY KEY , ENAME VARCHAR2(10) , JOB VARCHAR2(9) , MGR NUMBER(4) , HIREDATE DATE , SAL NUMBER(7,2) , COMM NUMBER(7,2) , DEPTNO NUMBER(2) CONSTRAINT FK_DEPTNO REFERENCES DEPT ); --==>> Table EMP이(가) 생성되었습니..

INSERT INSERT는 테이블이나 뷰에 데이터를 집어넣을때 사용하는 쿼리문이다. 보통 다음과 같은 방법으로 사용한다. INSERT INTO [데이터를 넣을 테이블이나 뷰 이름] [넣을 데이터(들)]; 예를들어 다음과 같은 테이블을 만들었다고 가정해보자. CREATE TABLE DEPT ( DEPTNO NUMBER(2) CONSTRAINT PK_DEPT PRIMARY KEY , DNAME VARCHAR2(14) , LOC VARCHAR2(13) ); --==>> Table DEPT이(가) 생성되었습니다. 이런 경우 데이터를 넣기 위해서 다음과 같이 쿼리문을 작성하면 된다. --> 부서 번호가 10인 뉴욕에 위치한 ACCOUNTING 부서 데이터 DEPT 테이블에 추가 INSERT INTO DEPT VA..
CREATE CREATE 는 SQL에서 무언가를 만들때 쓰이는 쿼리문이다. 여기서 무언가는 테이블 스페이스, 테이블, 뷰, 등 종류가 아주 다양하다. 보통 다음과 같은 형식으로 사용한다. CREATE [생성할 형식] [생성할 것의 이름] [추가로 생성시 필요한 쿼리문(형식에 따라 차이가 있음)] CREATE 쿼리문을 사용한 예를 들면 다음과 같다. 1. 유저 생성 CREATE USER SCOTT INDENTIFIED BY tiger; --==>> User SCOTT이(가) 생성되었습니다. 2. 테이블 스페이스 생성 CREATE TABLESPACE TBS_EDUA DATAFILE 'C:\TESTDATA\TBS_EDUA01.DBF' SIZE 4M EXTENT MANAGEMENT LOCAL SEGMENT SP..
데이터(Data) 데이터란 현실 세계에서 관찰이나 측정을 통해 수집된 사실(Facts)이나 값(Values), 또는 그 값들의 집합을 말한다. 개인은 물론이고 기업이나 기관은 정보를 필요로 한다. 예를 들면, 회사에서는 사원, 부서, 급여 등에 대한 자료를 관리해야 하고 도서관 같은 경우에는 회원, 도서, 반납일 등의 자료를 관리해야 한다. 이러한 자료를 데이터라고 한다. 정보(Information) 정보란 데이터를 바탕으로 구체화 한 유효한 해석(Interpretation)이나 데이터 상호간의 관계(Relationship)를 의사 결정에 도움이 되도록 가공한 것이다. 데이터베이스(Database) 데이터베이스란 여러 응용 시스템들이 공유할 수 있도록 통합, 저장된 운영데이터의 집합이다. 이러한 데이터들..