안녕하세요 과외선생J 입니다 ^^
지난 포스팅에서 기본적인 명령어 몇가지를 알아보았었습니다.
이번에는 SQL 명령어 중 DML 을 공부해보도록 하겠습니다.
* 본 포스팅은 중부기술교육원 수업과 한빛미디어 데이터베이스 개론과 실습 책을 기본바탕으로 공부한 뒤 작성되었음을 알립니다.
* 교재의 예제 위주로 이해를 돕기 위해 각 문법에 대한 해설을 달았습니다.
* SQLdeveloper를 사용하도 되나 SQLPlus로 수업을 하였기에 예제결과는 cmd창으로 보여드립니다.
1. SELECT 문
1) 기본형태
SELECT [속성이름] FROM [테이블 이름] + ( where, group by, having, order by 등이 추가로 올 수 있습니다.)
2) 기본검색
select bookname. price from book;
-> book 테이블에서 bookname과 price를 검색

select price, bookname from book;
-> book 테이블에서 모든 pirce와 bookname을 검색,출력
-> 입력한 속성 순서대로 출력이 되는 것을 확인할 수 있다.

select bookid, bookname, publisher, price from book;
-> book 테이블에서 모든 bookid, bookname, publisher, price을 검색 후 순서대로 출력

select * from book;
->book 테이블에서 모든속성을 검색, 출력
-> *는 와일드카드로 All 의 의미를 가진다.

select publisher from book;
->book 테이블에서 모든 출판사를 검색, 출력

select distinct publisher from book;
->book 테이블에서 모든 출판사를 중복제거하여 검색, 출력

3) 조건검색
특정 조건에 맞는 값을 검색할 때 where절을 사용하며 여러가지 술어와 함께 사용이 된다.
술어의 종류로는 비교, 범위, 집합, 패턴, NULL이 있다.
select * from book where price<20000;
-> book 테이블에서 20000원 미만의 가격을 가진 모든 책을 검색, 출력
-> 비교 술어 : <, >, >=, <=, =, <>

select * from book where price between 10000 and 20000;
-> book 테이블에서 가격이 10000~20000원인 모든 책을 검색, 출력

select * from book where price>= 10000 and price <=20000;
-> book 테이블에서 가격이 10000원 이상이고 20000원 이하인 모든 책을 검색, 출력

select * from book where publisher in ('굿스포츠', '대한미디어');
-> book 테이블에서 출판사 이름이 굿스포츠와 대한미디어인 책을 검색, 출력
-> 문자열을 검색할때는 작은 따옴포(' ') 를 사용한다.
-> 집합술어 : IN, NOT IN

select * from book where publisher not in ('굿스포츠', '대한미디어');
-> book 테이블에서 출판사 이름이 굿스포츠와 대한미디어인 책을 제외하고 검색, 출력

select bookname, publisher from book where bookname like '축구의 역사';
-> book 테이블에서 책이름이 축구의 역사 인 책을 검색, 출력
-> 패턴 술어 : like

select bookname, publisher from book where bookname like '%축구%';
-> book 테이블에서 책이름에 축구라는 단어가 들어가는 책을 검색, 출력
-> %은 아무 문자나 열을 대신하는 기호이다.

select * from book where bookname like '_구%';
-> book 테이블에서 책이름에 구 라는 단어가 들어가는 책을 검색, 출력
-> _ (underbar)는 특정 위치 한 문자만 대신하는 와일드 문자이다.
-> _를 두번 쓸 경우 3번째 자리에 구가 오는 책을 검색하게 된다.

select * from book where bookname like '%축구%' and price>=20000;
-> book 테이블에서 책이름에 축구 라는 단어가 들어가는 책 중에 20000원을 넘는 책을 검색, 출력
-> 복합조건 : AND, OR, NOT
-> 조건을 여러개를 쓸 수 있다.

select * from book where publisher='굿스포츠' or publisher = '대한미디어';
-> book 테이블에서 출판사 이름이 굿스포츠 이거나 또는 대한미디어인 책을 검색, 출력

오늘은 여기까지만!!! 더 하면 머리가 터질거같습니다 ㅠㅠ
혹시 이해가 안되는 내용이 있을 경우 댓글 달아주세요~
그럼 다음 포스팅에서 뵙겠습니다!
'Database > SQL' 카테고리의 다른 글
[SQL] SQLPlus 명령어 DML - 3탄 (1) | 2020.11.17 |
---|---|
[SQL] SQLPlus 명령어 DML - 2탄 (1) | 2020.11.17 |
[SQL] 데이터베이스의 기본 이론 개념 1탄 (2) | 2020.11.13 |
[SQL] SQLPLUS - 몇 가지 기본 명령어 (2) | 2020.11.09 |
[SQL] oracle Manager Database 웹 접속 방법 (2) | 2020.10.29 |
댓글