본문 바로가기
반응형

DBMS/ORACLE70

[ORACLE]오라클_날짜함수(SYSDATE) SYSDATE 현재 날짜와 시간을 시스템 기준으로 얻어온다. (최소단위 1초) 얻어온 숫자에 연산이 가능하다. TO_CHAR : 숫자나 날짜를 문자형식으로 변환 해준다. TO_DATE : 숫자나 문자형식을 날짜형식으로 변환 해준다. 날짜를 넣어줄때는 TO_DATE 형식으로 하고 그 날짜를 조회할때는 TO_CHAR 형식으로 출력한다. SYSDATE는 정말 자주 사용하는 날짜함수이다. 사용법은 매우 간단하다. ▷ 구문 SELECT SYSDATE FROM dual; 예제 1) SYSDATE와 TO_CHAR 사용 SELECT TO_DATE(SYSDATE, 'yyyy mm dd') AS "현재시간" FROM DUAL; SELECT TO_CHAR(SYSDATE, 'RRRR-MM-DD HH24:MI:SS') AS ".. 2019. 2. 11.
[ORACLE]오라클_제약조건( FOREIGN KEY_외래키 ) FOREIGN KEY 외래키 역시 PK와 마찬가지로 매우 중요한 제약조건이다. 외부키, 외래키, 참조키, 외부 식별자 등으로 불리며 흔히 FK라고도 한다. FK가 정의된 테이블을 자식 테이블이라고 칭한다. 참조되는 테이블 즉, PK가 있는 테이블을 부모 테이블이라 한다. 부모 테이블의 PK 컬럼에 존재하는 데이터만 자식 테이블에 입력할 수 있다. 부모 테이블은 자식의 데이터나 테이블이 삭제된다고 영향을 받지 않는다. 참조하는 데이터 컬럼과 데이터 타입이 반드시 일치해야 한다. 참조할 수 있는 컬럼은 기본키(PK)나 UNIQUE만 가능하다.(보통 PK랑 엮는다.) 제약조건을 추가할 때 사용되는 구문은 다음과 같다. ▷ 구문 CONSTRAINT [제약조건 명] FOREIGN KEY([컬럼명]) REFEREN.. 2019. 2. 10.
[ORACLE]오라클_제약조건( PRIMARY KEY_기본키 ) PRIMARY KEY 어떤 테이블이든 거의 무조건 하나는 들어간다 생각되는 기본키이다. 기본키 역시 기본적으로 다른 제약조건과 마찬가지로 테이블을 생성할 때 같이 정의한다. 테이블당 하나만 정의 가능하다. (두개 이상의 기본키는 조합키/복합키 라고 불린다.) PK는 NOT NULL + UNIQUE의 기능을 가지고 있다. 주키 / 기본키 / 식별자 등 다양한 명칭으로 불리고 있다. 자동 INDEX가 생성되는데, 이는 검색키로서 검색 속도를 향상시키는 역할을 한다. 제약조건을 추가하는 방식은 다른 제약조건과 비슷하다. [컬럼] [타입] PRIMARY KEY [컬럼] [타입] CONSTRAINT [제약조건 명] PRIMARY KEY CONSTRAINT [제약조건 명] PRIMARY KEY([컬럼명1],[컬럼명.. 2019. 2. 10.
[ORACLE]오라클_제약조건( DEFAULT ) DEFAULT DEFAULT는 아무 값도 입력하지 않아도 NULL 값이 아닌, 기본 값으로 설정한 값이 자동으로 입력되도록 하는 제약조건이다. NOT NULL과 마찬가지로 굉장히 많이 사용되는 제약조건이다. DEFAULT 제약조건 추가 [컬럼명] [타입] DEFAULT 기본값 일반적으로는 CREATE 테이블을 생성할 때 선언해주고는 한다. CREATE TABLE board( bHit NUMBER DEFAULT 1 ); 이런 식으로 DEFAULT 제약조건을 추가해줄 경우 INSERT로 값을 넣어줄 때 굳이 값을 입력하지 않아서 자동으로 1이라는 값이 해당 컬럼 데이터로 들어가게 된다. 추가적으로 만약 CREATE 테이블 생성때 DEFAULT 제약조건을 추가하지 못했거나, 추후에 넣어줘야 하는 경우가 생겼다.. 2019. 2. 10.
[ORACLE]오라클_제약조건( CHECK ) CHECK CHECK은 입력할 수 있는 값의 범위를 설정해 주는 제약조건이다. 그렇기 때문에 다음과 같은 특징을 가지고 있다. 입력 값이 조건에 맞지 않으면 오류가 발생한다. 입력 값의 범위를 지정할 수 있다. 예를들어 2000 ~ 10000 까지만 입력이 가능하다고 설정을 하게 되면 그 범위를 벗어난 값이 들어올 수 없다는 말이다. 그리고 주의할 점은 여느 제약조건과 마찬가지로 이미 들어가 있는 데이터가 조건에 위반되면 제약조건을 추가할 수 없다. ALTER TABLE [테이블명] ADD CONSTRAINT [제약조건명] [제약조건](범위) CHECK 역시 컬럼 옆에 지정해서 추가해 줄 수 있지만, 조건이 들어가다보니 길이가 긴 편이라 가독성을 위해 위와같이 따로 설정해 주는것이 좋다. ALTER TA.. 2019. 2. 10.
[ORACLE]오라클_제약조건( UNIQUE ) UNIQUE 유니크란 고유값을 의미한다. 즉, 유일한 값만 들어가도록 하고 싶을 때 사용하는 제약조건이다. 그리고 당연하게도 NOT NULL과 함께 사용할 수 있다. UNIQUE 제약조건을 추가하는 방법은 다음과 같다. [컬럼명] [타입] UNIQUE [컬럼명] [타입] CONSTRAINT [제약조건 명] UNIQUE([컬럼명]) CONSTRAINT [제약조건 명] UNIQUE([컬럼명]) UNIQUE 제약조건은 NOT NULL과는 다르게 제약조건 명을 명시하게 되면 그 뒤에 컬럼명을 다시 한번 명시해야 한다. 그래서 굳이 해당 컬럼 옆에 명시하기보다는 끝나는 지점에 한 번에 묶어서 처리를 한다. CREATE TABLE board( id VARCHAR(10) UNIQUE NOT NULL, nickName.. 2019. 2. 10.
[ORACLE]오라클_제약조건( NOT NULL ) NOT NULL 테이블을 만들 때 컬럼을 정의하는데, 만약 그때 NOT NULL 제약조건을 명시하게 되면 해당 컬럼에는 반드시 데이터를 입력해야만 한다. 이러한 제약조건 특성상 해당 컬럼에는 반드시, 필수적으로 값이 들어가야 한다면 NOT NULL을 명시해서 사용해주는 것이 안전하다. 예를 하나 들어보자면, 게시글을 만든다고 했을때 무조건 들어가야 하는 값과 굳이 들어갈 필요가 없는 값은 뭐가 있을까? (* 예시는 예시일뿐 따라 하지 말자.) CREATE TABLE board( title VARCHAR(10), content VARCHAR(1000), hashtag VARCHAR(100) ); 이런 식으로 테이블을 구성한다면, 보통 게시글의 경우 제목과 내용은 반드시 들어가는 경우가 많지만, 해시태그 같.. 2019. 2. 10.
[ORACLE]오라클_ 제약조건(CONSTRAINT) 종류 및 조회/추가/삭제 제약조건(CONSTRAINT) 제약 조건이란 데이터의 무결성을 지키기 위해 제한된 조건을 의미한다. 쉽게 말해 테이블이나 속성에 부적절한 데이터가 들어오는 것을 사전에 차단하도록 정해 놓은 것이라 생각하면 된다. 우선 제약조건의 종류로는 다음과 같다. NOT NULL UNIQUE CHECK PRIMARY KEY FOREIGN KEY DEFAULT 각 제약조건의 상세한 내용은 링크를 통해 해당 내용을 살펴보는 것을 추천한다. 제약 조건 조회 제약조건을 조회하는 방법에는 여러가지가 존재하는데, 다 알 필요는 없지만 보통 다음과 같다. all_constraints, dba_constraints 이 두 개가 비슷한 내용을 품고 있다. user_constraints를 일반적으로 많이 사용한다. SELECT * F.. 2019. 2. 10.
[ORACLE]오라클_DISTINCT와 GROUP BY의 차이 DISTINCT VS GROUP BY 오라클의 DISTINCT 와 GROUP BY 의 차이에 대해 알아보도록 하자. 두개가 각 사용되는 시점에 대해 얘기하자면 DISTINCT는 유니크한(중복을 제거)한 데이터를 조회하는 경우에 사용되며, GROUP BY는 지정한 데이터를 그룹핑해서 그 결과를 가져오는 경우에 사용된다. 둘의 설명이 다르지만 결과는 동일하게 중첩되는 데이터를 제거한 결과를 보여주는 것에서는 같다고 볼 수 있다. 예제 1) DISTINCT 와 GROUP BY -- DISTINCT SELECT DISTINCT depart_no FROM emp SELECT DISTINCT depart_no, family_name FROM emp -- GROUP BY SELECT depart_no FROM emp.. 2019. 2. 8.
반응형
TOP