SQL 기초6~7 - 10~11 - BETWEEN _ (Chapter 07. Logical Operators - [Chapter 07-6. BETWEEN])

HA_·2023년 11월 24일
0

Chapter 07-6. BETWEEN

1. BETWEEN 문법

조건값이 범위 사이에 있으면 TRUE

SELECT column1, column2, ...
FROM tablename
WHERE column1 BETWEEN value1 AND value2;

2. BETWEEN 예제 1 - 1

  • 예제 실습 전, CELEB TABLE에 있는 데이터 확인하기!

나이가 20세에서 40세 사이의 데이터 검색

SELECT *
FROM celeb
WHERE age BETWEEN 20 AND 40;

3. BETWEEN 예제 1 - 2

나이가 20세에서 40세 사이의 데이터 검색

SELECT *
FROM celeb
WHERE age>=20 AND age<=40;

4. BETWEEN 예제 2 - 1

생년월일이 1980년에서 1995년 사이가 아니면서 여자이거나,
소속사가 YG엔터테이먼트이면서 나이가 20세에서 45세 사이가 아닌 데이터 검색
내가 적은 답안>

SELECT *
FROM celeb
WHERE (NOT BRITHDAY BETWEEN 19800101 AND 19951231 AND SEX='F') OR (AGENCY='YG엔터테이먼트' AND NOT AGE BETWEEN 20 AND 45);

정답!

5. BETWEEN 예제 2 - 2

생년월일이 1980년에서 1995년 사이가 아니면서 여자이거나,
소속사가 YG엔터테이먼트이면서 나이가 20세에서 45세 사이가 아닌 데이터 검색

SELECT *
FROM celeb
WHERE WHERE BRITHDAY BETWEEN 19800101 AND 19951231;

6. BETWEEN 예제 2 - 3

생년월일이 1980년에서 1995년 사이가 아니면서 여자이거나,
소속사가 YG엔터테이먼트이면서 나이가 20세에서 45세 사이가 아닌 데이터 검색

SELECT *
FROM celeb
WHERE NOT BRITHDAY BETWEEN 19800101 AND 19951231;

7. BETWEEN 예제 2 - 4

생년월일이 1980년에서 1995년 사이가 아니면서 여자이거나,
소속사가 YG엔터테이먼트이면서 나이가 20세에서 45세 사이가 아닌 데이터 검색

SELECT *
FROM CELEB
WHERE NOT BRITHDAY BETWEEN 19800101 AND 19951231 AND SEX='F'

8. BETWEEN 예제 2 - 5

생년월일이 1980년에서 1995년 사이가 아니면서 여자이거나,
소속사가 YG엔터테이먼트이면서 나이가 20세에서 45세 사이가 아닌 데이터 검색

SELECT *
FROM CELEB
WHERE AGENCY='YG엔터테이먼트';

9. BETWEEN 예제 2 - 6

생년월일이 1980년에서 1995년 사이가 아니면서 여자이거나,
소속사가 YG엔터테이먼트이면서 나이가 20세에서 45세 사이가 아닌 데이터 검색

SELECT *
FROM CELEB
WHERE AGENCY='YG엔터테이먼트' AND NOT AGE BETWEEN 20 AND 45;

10. BETWEEN 예제 2 - 7

생년월일이 1980년에서 1995년 사이가 아니면서 여자이거나,
소속사가 YG엔터테이먼트이면서 나이가 20세에서 45세 사이가 아닌 데이터
검색

SELECT *
FROM CELEB
WHERE (NOT BRITHDAY BETWEEN 19800101 AND 19951231 AND SEX='F') OR
(AGENCY='YG엔터테이먼트' AND NOT AGE BETWEEN 20 AND 45);

혼자서 해봅시다.

문제 1. Celeb 테이블에서 나이가 30세에서 60세 사이이고 성별이 남자인 데이터를 나이순으로 정렬하여 조회하세요.

내가 쓴 답>

SELECT *
FROM CELEB
WHERE AGE BETWEEN 30 AND 60 AND SEX='M'
ORDER BY AGE;


정답!

문제 2. Celeb 테이블에서 나이가 30세에서 60세 사이가 아니거나 YG엔터테이먼트 소속인 데이터를 나이의 역순으로 정렬하여 조회하세요.

SELECT *
FROM CELEB
WHERE NOT AGE BETWEEN 30 AND 60 OR AGENCY='YG엔터테이먼트'
ORDER BY AGE DESC;


정답!

문제 3. Celeb 테이블에서 아이디가 1 에서 5사이의 값이면서 성별이 여자이거나, 아이디가 홀수이면서 성별이 남자이면서 나이가 20세에서 30세 사이인 데이터를 조회하세요.

SELECT *
FROM CELEB
WHERE (ID BETWEEN 1 AND 5 AND SEX='F')
OR ((ID%2)=1 AND SEX='M' AND AGE BETWEEN 20 AND 30);


정답!

0개의 댓글