본문 바로가기
Database

[오라클] CRUD 쿼리 정리

by 서피 2021. 3. 4.

1. Create (Insert)

테이블 생성하기

create table member(
    member_id varchar2(20),
    member_pwd varchar2(40),
    member_name varchar2(20),
    member_age number
);

create table 테이블명 (); 을 실행하면 테이블이 생성된다.

 

위 명령어대로 테이블을 생성하면,

 

member_id라는 컬럼명에 최대 20자리의 문자,

member_pwd라는 컬럼명에 최대 40자리의 문자,

member_name라는 컬럼명에 최대 20자리의 문자,

mamber_age라는 컬럼명에 숫자

 

를 저장할 수 있는 테이블이 만들어진다.

 

 

 

아이디가 'gildong', 비밀번호가 'mypassword', 이름이 '홍길동', 나이가 30 인 멤버를 'member' 테이블에 추가하기

insert into member(member_id, member_pwd, member_name, member_age) 
values ('gildong', 'mypassword', '홍길동', 30);

 

2. Read

employee 테이블에서 모든 행의 id, name, no, email, phone 컬럼 가져오기

select emp_id, emp_name, emp_no, email, phone from employee;

 

employee 테이블에서 이름이 '홍길동' 인 사람의 id, name, no, email, phone 컬럼 가져오기

select emp_id, emp_name, emp_no, email, phone from employee where emp_name = '홍길동';

 

중복된 job_code 값을 한 번씩만 출력하기

select distinct job_code from employee;

 

id가 123으로 끝나는 행 가져오기

select * from employee where emp_id like '%123';

 

이메일의 아이디가 5자리인 행 가져오기

select * from employee where email like '_____@%';

 

이메일 아이디의 _앞자리가 3자리인 행 가져오기

select * from employee where email like '___#_%' escape '#';

escape 뒤의 문자를 와일드카드가 아니라 필드값으로 인식

 

이메일을 입력하지 않은 행 가져오기

select emp_name from employee where email is null;

 

급여의 내림차순으로 정렬 (높은숫자가 1번째 자리로)

select * from employee order by salary desc;

 

급여의 오름차순으로 정렬 (낮은숫자가 1번째 자리로)

select * from employee order by salary asc;

 

 

3. Update

아이디가 gildong인 사용자의 이름을 '김길동'으로 변경하기

update member set member_name = '김길동' where member_id = 'gildong';

 

의미 풀이

sql문 의미
update member member 테이블에서
set member_name = '김길동' member_name 을 '김길동' 으로 설정한다
where member_id = 'gildong' member_id 가 'gildong' 인 행에 대해서

 

4. Delete

'member' 테이블에서 member_id가 'gildong'인 사용자 제거하기

delete from member where member_id = 'gildong';

 

 

 

댓글