❇️ 요약
- 논리연산자 : AND, OR, NOT, BETWEEN, IN, LIKE
📖 Logical Operators(논리연산자)
🔆 Logical Operators(논리연산자)
| 연산자 | 의미 |
|---|
| AND | 조건을 모두 만족하는 경우 TRUE |
| OR | 하나의 조건이라도 만족하는 경우 TRUE |
| NOT | 조건을 만족하지 않는 경우 TRUE |
| BETWEEN | 조건값의 범위 사이에 있으면 TRUE |
| IN | 조건값이 목록에 있으면 TRUE |
| LIKE | 조건값이 패턴에 맞으면 TRUE |
📖 AND
🔆 AND 문법
SELECT column1, column2, ...
FROM tablename
WHERE condition AND condition2 AND condition3 ...;
🔆 AND 예제
mysql> SELECT *
-> FROM celeb
-> WHERE AGE = 29 AND SEX='F';
+
| ID | NAME | BRITHDAY | AGE | SEX | JOB_TITLE | AGENCY |
+
| 1 | 아이유 | 1993-05-16 | 29 | F | 가수,텔런트 | EDAM엔터테이먼트 |
+
1 row in set (0.00 sec)
📖 OR
🔆 OR 문법
SELECT column1, column2, ...
FROM tablename
WHERE condition1 OR condition2 OR condition3 ...;
🔆 OR 예제
- YG엔터테이먼트 소속이거나 나무엑터스 소속인 연예인 중, 나이가 30세보다 작은 데이터를 검색
mysql> SELECT *
-> FROM celeb
-> WHERE
-> (AGENCY = 'YG엔터테이먼트' OR AGENCY = '나무엑터스')
-> AND
-> AGE < 30;
+
| ID | NAME | BRITHDAY | AGE | SEX | JOB_TITLE | AGENCY |
+
| 3 | 송강 | 1994-04-23 | 28 | M | 텔런트 | 나무엑터스 |
| 7 | 이수현 | 1999-05-04 | 23 | F | 가수 | YG엔터테이먼트 |
+
2 rows in set (0.00 sec)
📖 NOT
🔆 NOT 문법
SELECT column1, column2, ...
FROM tablename
WHERE NOT condition;
🔆NOT 예제
mysql> SELECT *
-> FROM celeb
-> WHERE NOT SEX = 'F';
+
| ID | NAME | BIRTHDAY | AGE | SEX | JOB_TITLE | AGENCY |
+
| 3 | 송강 | 1994-04-23 | 28 | M | 텔런트 | 나무엑터스 |
| 4 | 강동원 | 1981-01-18 | 41 | M | 영화배우, 텔런트 | YG엔터테이먼트 |
| 5 | 유재석 | 1972-08-14 | 50 | M | MC, 개그맨 | 안테나 |
| 6 | 차승원 | 1970-06-07 | 48 | M | 영화배우, 모델 | YG엔터테이먼트 |
+
4 rows in set (0.00 sec)
📖 BETWEEN
🔆 BETWEEN 문법
SELECT column1, column2, ...
FROM tablename
WHERE column1 BETWEEN value1 AND value2;
🔆BETWEEN 예제
mysql> SELECT *
-> FROM celeb
-> WHERE
-> AGE BETWEEN 20 AND 40;
+
| ID | NAME | BIRTHDAY | AGE | SEX | JOB_TITLE | AGENCY |
+
| 1 | 아이유 | 1993-05-16 | 29 | F | 가수,텔런트 | EDAM엔터테이먼트 |
| 2 | 이미주 | 1994-09-23 | 28 | F | 가수 | 울림엔터테이먼트 |
| 3 | 송강 | 1994-04-23 | 28 | M | 텔런트 | 나무엑터스 |
| 7 | 이수현 | 1999-05-04 | 23 | F | 가수 | YG엔터테이먼트 |
+
4 rows in set (0.00 sec)
📖 IN
🔆 IN 문법
SELECT column1, column2, ...
FROM tablename
WHERE column1 IN (value1, value2, ...);
🔆 IN 예제
- 나이가 28세, 48세 중 하나인 데이터 검색
mysql> SELECT *
-> FROM celeb
-> WHERE
-> AGE IN (28,48);
+
| ID | NAME | BIRTHDAY | AGE | SEX | JOB_TITLE | AGENCY |
+
| 2 | 이미주 | 1994-09-23 | 28 | F | 가수 | 울림엔터테이먼트 |
| 3 | 송강 | 1994-04-23 | 28 | M | 텔런트 | 나무엑터스 |
| 6 | 차승원 | 1970-06-07 | 48 | M | 영화배우, 모델 | YG엔터테이먼트 |
+
3 rows in set (0.01 sec)
📖 LIKE
🔆 LIKE 문법
SELECT column1, column2, ...
FROM tablename
WHERE column1 LIKE pettern;
| 와일드 문자 | 설명 | 예시 |
|---|
| % | 0개 이상의 문자 일치 | Like ‘%키워드%’ : '키워드' 기준 앞 뒤로 모든 문자들이 있는 값 검색 |
| _ | 특정 위치의 1개의 문자와 일치 | ‘_동%’ : 두번째 위치에 ‘동’이 들어가는 문자열 |
| [ ] | 1개의 문자와 일치 | '[0-8]%’ : 0-8 사이 숫자로 시작하는 문자열 |
| [ ^ ] | 1개의 문자와 불일치 | '[^0-8]%’ : 0-8 사이 숫자로 시작하지 않는 문자열 |
🔆 LIKE 예제
- 직업명이 ‘가’로 시작하고 최소 2글자 이상인 데이터 검색
mysql> SELECT *
-> FROM celeb
-> WHERE
-> JOB_TITLE LIKE '가_%';
+
| ID | NAME | BIRTHDAY | AGE | SEX | JOB_TITLE | AGENCY |
+
| 1 | 아이유 | 1993-05-16 | 29 | F | 가수,텔런트 | EDAM엔터테이먼트 |
| 2 | 이미주 | 1994-09-23 | 28 | F | 가수 | 울림엔터테이먼트 |
| 7 | 이수현 | 1999-05-04 | 23 | F | 가수 | YG엔터테이먼트 |
+
3 rows in set (0.00 sec)