본문 바로가기

SQL

SQL [3] - WHERE 조건문과 각종 연산자

1. WHERE 조건문 

- SELECT, FROM 구문 뒤에 위치하여, 원하는 조건을 추가하여 조회를 할 수 있게한다.

- 예를 들면, 학생 테이블에서 특정 이름을 가진 학생만 조회하기를 가능하게 해준다.

 

- Quiz 홍길동이라는 학생만 조회하기  

SELECT NAME

FROM STUDENT

WHERE NAME = '홍길동'

;

 

홍길동이라는 학생만 조회

 

2. 기본 연산자

  연결 연산자 : || 

  산술 연산자 : + 더하기 - 빼기 * 곱하기 / 나누기 

  비교 연산자 : = 같다 > 크다 < 작다 >= 크거나 작다 <= 작거나 같다 <> 다르다(1) != 다르다(2)

 

1) 연결 연산자 : 컬럼과 컬럼, 컬럼과 리터럴 등의 내용을 연결해 줄 수 있다.

- Quiz 학생 이름과 학년을 연결하여 조회

SELECT NAME||GRADE

FROM STUDENT

;

이름과 학년을 연결하여 한 컬럼으로 조회하기

- Quiz '이름은 '이라는 리터럴을 NAME 컬럼에 연결하여 조회하기 

SELECT '이름은'||NAME

FROM STUDENT

;  

생성한 리터럴을 NAME에 연결하여 한 컬럼으로 조회하기 

 

(2) 더하기 

- Quiz 학생의 학년에 더하기 10을 하여 출력하기

SELECT GRADE + 10 

FROM STUDENT 

;

(3) 빼기

- Quiz 학생의 키에 100을 빼서 출력하기

SELECT HEIGHT - 100

FROM STUDENT

;

(4) 곱하기와 나누기

- Quiz 학생의 키에 2를 곱하고, 몸무게에 2를 나눠서 출력하기

SELECT HEIGHT*2,WEIGHT/2

FROM STUDENT

;

 

3. SQL 연산자

  컬럼명 BETWEEN A AND B : 컬럼의 데이터 값이 A 이상 B 이하 

  컬럼명 IN (값1, 값2, 값3, ...) : 컬럼의 데이터 값이 값1, 값2, 값3, ... 중에 일치

  LIKE : 컬럼의 값이 임의의 문자를 포함

       % : 임의의 문자 0개 이상

       _ : 임의의 문자 1개 

 

(1) BETWEEN A AND B

- Quiz 학생의 키가 150 이상 170 이하인 학생의 이름과 키를 출력하기

SELECT NAME, HEIGHT

FROM STUDENT

WHERE HEIGHT BETWEEN 150 AND 170

;

(2) IN (A,B,C,...)

- QUIZ 학생의 이름이 홍길동, 김문호, 유해진인 학생의 이름 출력하기

SELECT NAME

FROM STUDENT

WHERE NAME IN('홍길동', '김문호', '유해진') <- 문자열이니까 작은 따옴표로 묶어줘야한다.

;

(3) LIKE

- Quiz 이름이 이로 시작하는 학생이름, 학번 출력하기 

select name, studno
from student
where name like '이%'
;

- Quiz 이름이 진으로 끝나는 학생이름, 학번 출력하기 

select name, studno
from student
where name like '%진'
;

 

 

- Quiz 이름이 우로 끝나고 앞에 하나의 글자수만 있는 학생이름, 학번 출력하기

select name, studno
from student
where name like '_우'
;

'SQL' 카테고리의 다른 글