국비 지원/SQL

국비 지원/SQL

[Oracle] 시퀀스(Sequence)

시퀀스 자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 객체를 말한다. 시퀀스는 게시판 번호와 같이 번호를 순차적으로 할당할 때 필요하다. 시퀀스 생성하기 CREATE SEQUENCE [시퀀스명] INCREMENT BY [증감숫자] START WITH [시작숫자] MINVALUE [최솟값] MAXVALUE [최대값]; CREATE SEQUENCE SEQ_NO INCREMENT BY 1 START WITH 1 MINVALUE 1 MAXVALUE 100; 시퀀스 번호 확인하기 SELECT SEQ_NO.NEXTVAL FROM DUAL; 위의 코드를 한번 더 실행시키면 아래와 같이 시퀀스 값이 1이 늘어나는 것을 확인할 수 있다. 현재 시퀀스 번호 확인하기 SELECT SEQ_NO.CURRVAL FRO..

국비 지원/SQL

[Oracle] ROWNUM과 사용할 시 주의할 점

ROWNUM은 오라클 내부적으로 생성되는 가상 컬럼으로 자료의 일부를 잘라내서 이용할 때 사용한다. 즉, ROWNUM을 통해 조회된 컬럼이 몇 번째 컬럼인지 알 수 있다. 위의 사진과 같이 ID와 별개로 순서를 알 수 있는 것이 ROWNUM이다. 1. 먼저 ROWNUM은 아래와 같이 *(모든)과 같이 사용할 수 없다. SELECT ROWNUM, * FROM MEMBER; 왜냐하면 모든이라는 것은 전부 출력한다는 의미인데 이미 전부를 출력했는데 여기서 다른 것이 포함될 수 없기 때문이라고 할 수 있다. 이 부분은 아래와 같이 명시적으로 정의해준다면 사용할 수 있다. SELECT ROWNUM, MEMBER.* FROM MEMBER; 2. 1부터 시작하는 ROWNUM이 아니라면 서브쿼리를 사용하자. 이게 무슨..

국비 지원/SQL

[Oracle] 숫자형 함수와 문자형 함수

숫자형 함수 1. ABS(n) : 매개변수 n의 절댓값을 반환 SELECT ABS(-100) FROM DUAL; DUAL 테이블은 오라클에서 사용하는 임시 테이블이다. 2. CEIL(n) : 소수점 아래를 다 버리고 1을 더한다. SELECT CEIL(10.3) FROM DUAL; 3. FLOOR(n) : 소수점 아래를 다 버린다. SELECT FLOOR(10.7) FROM DUAL; 4. POWER(x, n) : 매개변수 n번만큼 x를 거듭해서 곱한다. SELECT POWER(3, 5) FROM DUAL; 5. EXP(n) : 매개변수 n번만큼 e를 거듭해서 곱한다. SELECT EXP(1) FROM DUAL; 6. LN(n) : 매개변수 n의 자연로그 값을 반환 SELECT LN(10) FROM DU..

국비 지원/SQL

[SQL] DELETE, TRUNCATE, DROP의 차이점

SQL에서 삭제와 관련된 명령어로는 DELETE, TRUNCATE, DROP이 있다. 각각의 차이점에 대해서 알아보자. DELETE (DML 명령어) DELETE 후에는 데이터만 삭제되고 사용하고 있던 디스크 상의 공간과 인덱스가 그대로 존재한다. 즉, AUTO_INCREMENT로 지정해서 값을 증가시키는 컬럼이 초기화되지 않는다는 말이다. 그리고 원하는 데이터만 WHERE을 통해서 삭제가 가능하다. 삭제된 각 행에 대한 트랜잭션 로그가 남기 때문에 TRUNCATE보다 속도가 느리며 COMMIT 이전에 ROLLBACK이 가능하다. TRUNCATE(DDL 명령어) TRUNCATE 후에는 데이터가 1개도 없는 최초에 테이블 만들어졌던 상태로 컬럼 명만 존재하는 상태이다. 즉, 저장 공간 및 인덱스도 전부 삭..

국비 지원/SQL

[SQL] DML : 데이터 조작어

아래의 글을 통해 테이블과 데이터를 생성한 후에 보도록하자.2023.05.27 - [국비 지원/SQL] - [SQL] DDL, DML, DCL 명령어 [SQL] DDL, DML, DCL 명령어DDL : 데이터 정의어(Data Definition Language) 1. CREATE - 데이터베이스 또는 테이블을 생성하는 명령어 create database practice;// 데이터베이스 생성 use practice;// 데이터베이스 접속 create table member(// 테이블myblog1128.tistory.com 1. WHERE : 조건을 지정하여 데이터 검색하기select id, namefrom memberwhere id=1; 2. ORDER BY : 데이터 정렬해서 출력하기OREDER BY..

국비 지원/SQL

[SQL] DDL, DML, DCL 명령어

DDL : 데이터 정의어(Data Definition Language) 1. CREATE - 데이터베이스 또는 테이블을 생성하는 명령어create database practice; // 데이터베이스 생성use practice; // 데이터베이스 접속create table member( // 테이블 생성 id int not null, name varchar(20) not null, age int not null, addr varchar(100) not null, primary key(id));테이블을 생성하기 전에 먼저 USE 명령어를 통해 데이터베이스에 접근해야 한다. 2. ALTER - 테이블 구조를 변경할 때 사용하는 명령어 컬럼 추가 : ADD-- 컬럼 추가(ADD)al..

아민_
'국비 지원/SQL' 카테고리의 글 목록