본문 바로가기
Data Analysis/SQL

[SQL] 03. SQL 기초 쿼리1 (TABLE 만들기 + SELECT/WHERE)

by Dlearner 2019. 7. 14.
반응형

SQL에서의 '검색'

 

DB를 사용할때 가장 중요한 것이 바로 '검색'이다. 검색은 데이터가 저장되어 있는 테이블에서 필요한 데이터를 뽑아내는 것을 의미한다. 이를 다른말로 질의(Query쿼리) 또는 추출(Retrieve)라고도 한다.

 

 

 

- SELECT 구

검색을 위해 사용하는 SQL구문을 SELECT구문이라 표현하며, DB에 등록되어 있는 스키마와 내부 데이터를 불러올 수 있다.

 

+ Table 만들기

첫째로, 우선 SELECT 구문을 사용해 볼 테이블이 필요로 하므로 테이블을 만들고 시작한다. 

아래와 같이 DML 명령어인 CREATE TABLE 과 INSERT INTO 명령어로 테이블 스키마를 지정하고 데이터를 넣어준다.

 

아래 쿼리를 통해 테이블이 생성되었다.

 

- CREATE TABLE / INSERT INTO 를 활용하여 TABLE 생성  -

 

 

본격적으로 SELECT 구문을 실행해본다.

SELECT구를 이용하면 FROM구에서 제시된 테이블(예시에서는 ADDRESS 테이블)에서 불러오고 싶은 컬럼을 선택하여 검색할 수 있다.  * 은 테이블 전체 컬럼을 불러오며, 아래예시의 주석 부분과 같은 역할을 한다. 

 

- SELECT 구 -

 

 

 

 

 

- WHERE구

SELECT구는 테이블의 컬럼(속성)을 지정하여 검색한다고 설명한다면, WHERE은 더 세부단위의 행(레코드)을 지정하여 검색한다고 설명할 수 있겠다. (+ NULL값도 검색 가능하다)

 

아래 예시에서는 ADDRESS 테이블에서 주소(address) 레코드가 '서울시'일 때의 경우를 뽑아온 것이다.

 

- WHERE 구 -

 

 

 

- WHERE구의 다양한 조건 지정1 (연산자)

WHERE구에서 레코드의 조건을 지정할 때 연산자를 사용하는데, 동일 조건뿐 아니라 아래 표와 같이 다양한 조건을 사용할 수 있다.

 

연산자 의미
= ~와 같음
<> ~와 같지 않음
>= ~이상
> ~초과
<= ~이하
< ~미만

 

위의 연산자를 이용해 나이(age)가 35세 이상인 경우를 검색해보았다.

 

- WHERE 구(연산자)-

 

 

 

- WHERE구의 다양한 조건 지정2 (AND / OR / IN)

WHERE구의 AND / OR / IN 옵션을 사용하면, 복합적인 조건을 적용하여 검색할 수 있다.

 

AND 조건은 제시한 조건을 모두 만족하는 레코드를 검색할 때 사용하는 옵션이다.

OR 조건은 제시한 조건 중 하나라도 만족하는 레코드를 검색할 때 사용하는 옵션이다.

 

위의 조건들은 다음의 예시와 같이 사용해볼 수 있다.

 

- WHERE 구(AND/OR조건) -

 

 

 

IN 조건은 OR 조건과 비교하여 설명할 수 있겠다.

한 컬럼(속성) 내에서 다양한 레코드를 뽑아내고 싶을때 OR 조건을 사용해도 되지만, IN 조건을 사용하면 보다 깔끔한 쿼리로 완성시킬 수 있다.

 

- WHERE 구(OR/IN 조건)

 

반응형

댓글