일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- sql 사칙연산
- java알기
- db
- right()
- 간단한 검색
- 랜덤 닉네임 생성기
- where 조건식
- 대문자 자동변환
- mysql
- left()
- 스프링 트랙
- 자바
- column
- 조건식 여러개
- 자바트랙
- import.java.util.random
- 데이터베이스
- database
- 언어알기
- java가 중요한 이유
- dbms
- dbeaver
- 리스트자료형
- like %
- coding language
- java
- TIL
- java의 작동방식
- Table
- sql
- Today
- Total
수수한 코딩세상
[DB] SQL WHERE 문법 & 데이터 필터링 본문
<개발 도구>
DBMS : MySQL
Editor : DBeaver
SQL 문법 중에서 WHERE 문은 원하는 행에 필터링을 하여 데이터를 추출하고 싶을 때 사용하는 문법입니다.
"원하는 행만 출력하는 것 = 필터링" 이라고 생각하면 편하실 겁니다.
데이터 필터링 (WHERE)
▶ WHERE 문법 기본 작성법
SELECT 컬럼명 FROM 테이블명 WHERE 조건식;
▶ 조건식 기본 작성법
SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 = 값;
WHERE 문 뒤의 조건식은 컬럼명=값 형식으로 작성하시면 됩니다.
▶ 조건식의 값이 문자 타입의 자료형일 경우 작성법
SELECT 컬럼명 FROM 테이블명 WHERE 카테고리 ='가구';
조건식의 값이 문자 타입의 자료형인 경우 '문자'처럼 따옴표를 사용하면 됩니다.
데이터베이스에서는 칼럼명은 따옴표를 생략해 주기 때문에 값에만 사용하시면 됩니다.
위의 명령문을 출력하면 해당 테이블에서 카테고리가 '가구'에 해당하는 행만 출력됩니다.
▶ 조건식에 비교연산자 사용
SELECT 컬럼명 FROM 테이블명 WHERE 가격 > 5000;
조건식에는 다음과 같은 다양한 비교연산자를 사용할 수 있습니다.
사용가능한 비교연산자 : =(같다), <=>(같다, 양쪽의 피연산자가 모두 NULL이면 참 반환, 하나만 NULL이면 거짓 반환), != or <>(같지않다), >(크다), <(작다), >=(크거나 같다), <=(작거나 같다)
▶ 문자 데이터에 비교연산자 사용
SELECT 컬럼명 FROM 테이블명 WHERE 상품명 > '가';
참고로 문자에도 부등호를 사용할 수 있습니다.
SQL 상에서는 '가' < '나' < '다' , 'a' < 'b' < 'c' 가 성립하기 때문에 부등호를 사용할 수 있습니다.
SELECT 컬럼명 FROM 테이블명 WHERE 가구명 > 'ㄱ';
그리고 초성만 사용하게 되면 해당 초성이 포함되는 범위에서 비교연산을 해 줍니다.
▶ 특정 범위 내에서 데이터를 필터링하여 출력
SELECT 컬럼명 FROM 테이블명 WHERE 가격 BETWEEN 5000 AND 8000;
특정 범위내에서 데이터를 출력하고 싶을 때는 BETWEEN/ AND 연산자를 사용할 수 있습니다.
위의 명령어와 같은 의미로 5000 <= 가격 <= 8000으로 작성하면 안 되나?
라고 생각하실 수 있지만 SQL 문에서는 부등호를 연속으로 사용하여 코드를 작성하지 않기 때문에 조건식을 2개로 나누어서 작성하거나 BETWEEN/ AND 연산자를 사용해야 합니다.
조건식을 여러 개 작성하는 법은 다음 글에서 정리하도록 하겠습니다.
여기까지 데이터 필터링 문법 WHERE 문의 기본 사용법에 대해 정리해 보았습니다.
Reference
해당 글은 애플코딩님의 강의를 보고 정리한 내용입니다.
https://codingapple.com/course/sql-and-database/
한 번에 끝내는 SQL & Database - 코딩애플 온라인 강좌
SQL은 관계형 데이터베이스에서 데이터를 입출력할 때 사용하는 언어입니다. 관계형 데이터베이스를 다루는 곳에서 백엔드 개발 잘하고 싶다면 SQL을 잘 알아두도록 합시다. 실은 SQL을 개발자
codingapple.com
'수수한 코딩세상 > DB' 카테고리의 다른 글
[DB] 집계함수 (Aggregate Functions), 중복 제거 (0) | 2024.06.25 |
---|---|
[DB] 간단한 검색 기능 LIKE, %, _ (1) | 2024.06.24 |
[DB] DBeaver - SQL 대문자 자동 완성, 대문자 변환 방법 (0) | 2024.05.29 |
[DB] SQL SELECT / ORDER BY 문법 (0) | 2024.05.24 |
[DB] MySQL 데이터 타입 (0) | 2024.04.24 |