본문 바로가기

SQL/교육,실습

SQL데이터 분석 첫걸음 실습 (WHERE, 각종 연산자)

day3 는

조건에 맞는 데이터 가져오기

비교 연산자

논리 연산자

기타 주요 연산자

문자형 데이터 다루기

NULL 데이터 다루기

의 항목들을 조건에 맞는 데이터 가져오기라는 주제로 기본적인 교육을 마저 진행하였다.

오늘 배운 교육을 바탕으로 실습을 진행해 보겠다.

 

이번 day 실습은 조건에 맞는 데이터를 가져오는 실습 위주로 진행한다.

기본적으로 where 절을 익히는 day 이다.

 

이 테이블을 참고하여 실습을 진행 해보겠다.

실습1

이브이의 타입을 가져와 주세요

where 절을 이용하여 조건 생성 후 가져오는 실습이다.

실습1 쿼리문
실행 결과

실습2

캐터피의 공격력과 방어력을 가져와 주세요

실습1과 선택 쿼리 수 제외하고는 같은 실습이다.

실습2 쿼리문
실행 결과

 

실습3

몸무게가 6kg보다 큰 포켓몬들의 모든 데이터를 가져와 주세요

조건에 비교연산자를 적용한 실습이다.

실습3 쿼리문
실행 결과

 

실습4

키가 0.5m보다 크고, 몸무게가 6kg보다 크거나 같은 포켓몬들의 이름을 가져와 주세요

기존 실습에 and 연산자를 추가하여 진행한 실습이다.

실습4 쿼리문
실행 결과

 

실습5

포켓몬 테이블에서 공격력이 50 미만이거나, 방어력이 50 미만인 포켓몬들의 이름을 ‘weak_pokemon’이라는 별명으로 가져와 주세요

AS 함수를 이용하여 별명을 붙이고 or 연산자를 이용하여 진행한 실습

실습5 쿼리문
실행 결과

 

실습6

노말 타입이 아닌 포켓몬들의 데이터를 전부 가져와 주세요

!=연산자를 이용하여 선택한 조건을 제외한 데이터를 가져오는 실습

!= 는 = 과는 반대의 의미를 가지고 있다.

실습6 쿼리문
실행 결과

 

 

실습7

타입이 (normal, fire, water, grass) 중에 하나인 포켓몬들의 이름과 타입을 가져와 주세요.

in 함수를 이용하여 원하는 데이터만 가져오는 조건 생성후 데이터 가져오는 실습

 

실습7 쿼리문
실행 결과

실습8

공격력이 40과 60 사이인 포켓몬들의 이름과 공격력을 가져와 주세요

부등호 연산자를 이용해 원하는 데이터 가져오는 실습

실습8 쿼리문
실행 결과

실습9

이름에 ‘ e ’가 포함되는 포켓몬들의 이름을 가져와 주세요

[검색할 문자열] 내에 와일드카드를 사용하여 검색 조건을 구체적으로 표현할 수 있다.

와일드카드에는 

% : 0개 이상의 문자

_ : 1개의 문자

이렇게 가지고 있다.

사용 예제로는 

• ‘%e’ = e 로 끝나는 문자열  e, ee, eevee, apple, pineapple

• ‘e%’ = e 로 시작하는 문자열 e, ee, eevee, eric

• ‘%e%’ = e 가 포함된 문자열  e, ee, eevee, apple, pineapple, aespa

‘_e’ = e로 끝나고 e앞에 1개의 문자가 있는 문자열 ae, ee, ce

• ‘%_e ’ = e로 끝나고 e앞에 1개 이상의 문자가 있는 문자열 ee, eevee, apple, pineapple

• ‘%_e_%’ = e로 끝나고 e를 포함하고 e 앞 뒤로 각각 1개의 문자가 있는 문자열 eevee, aespa

 

와일드카드를 사용시에는 LIKE 연산자가 필요하다.

LIKE 연산자는 특정 문자열이 포함된 데이터를 선택하는 연산자이다.

실습9 쿼리문
실행 결과

 

실습10

이름에 ‘i’가 포함되고, 속도가 50 이하인 포켓몬 데이터를 전부 가져와 주세요

실습9와 같이 와일드카드를 활용하고 and 연산자를 활용하여 추가적으로 조건을 입력하는 실습

실습10 쿼리문
실행 결과

 

실습11

이름이 ‘chu’로 끝나는 포켓몬들의 이름, 키, 몸무게를 가져와 주세요

실습9와 같이 와일드카드를 활용하고 컬럼을 추가적으로 선택하는 실습

실습11 쿼리문
실행 결과

 

실습12

이름이 ‘e’로 끝나고, 방어력이 50 미만인 포켓몬들의 이름, 방어력을 가져와 주세요

실습11과 동일한 실습

실습12 쿼리문
실행 결과

 

 

실습13

공격력과 방어력의 차이가 10 이상인 포켓몬들의 이름, 공격력, 방어력을 가져와 주세요

문제는 복잡해 보이지만 단순 or 연산자를 이용한 실습이다.

실습13 쿼리문
실행 결과

 

실습14

능력치의 합이 150 이상인 포켓몬의 이름과 능력치의 합을 가져와 주세요. 이 때, 능력치의 합은 ‘total’이라는 별명으로 가져와 주세요.

조건1. 능력치의 합은 공격력, 방어력, 속도의 합을 의미합니다

where절로 조건을 걸어준뒤 AS함수를 사용하여 별명을 붙이는 실습

 

실습14 쿼리문
실행 결과