본문 바로가기
Database/SQL

[SQL] SQLPlus 명령어 DML - 1탄

by 과외선생J 2020. 11. 17.
반응형

안녕하세요 과외선생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 테이블에서 출판사 이름이 굿스포츠 이거나 또는 대한미디어인 책을 검색, 출력

 

 

오늘은 여기까지만!!! 더 하면 머리가 터질거같습니다 ㅠㅠ 

혹시 이해가 안되는 내용이 있을 경우 댓글 달아주세요~ 

그럼 다음 포스팅에서 뵙겠습니다! 

 

반응형

댓글