DataBase/MySQL
MySQL 문법 정리
Dev_Green
2022. 10. 12. 16:20
WHERE
SELECT 로 가져올 데이터에 조건을 걸어주는 절
SELECT * FROM users
WHERE user_id = 1
WHERE 절과 자주 같이 쓰이는 문법
- 같지 않음
select * from orders
where course_title != "ABC";
- 범위
select * from orders
where created_at between "2020-07-13" and "2020-07-15"
## 날짜의 경우 between A and B 일 때, A 부터 (B-1) 까지 조회됨에 유의
## 날짜에 따옴표 필수. 숫자만 쓰면 안돼
- 이 중에 네 것이 있느냐
select * from users
where name in ('kim', 'lee');
- 특정 문자 포함
select * from users
where email like '%daum.net'
a로 시작하고 com으로 끝나는 문자: 'a%com'
LIMIT
출력할 데이터의 개수
select * from users
limit 5
DISTINCT
중복된 데이터 제외
select distinct(payment_method) from orders;
NULL 처리
- IFNULL
SELECT IFNULL(Column명, "Null일 경우 대체 값") FROM 테이블명
- COALESCE
인수들 중 NULL이 아닌 첫번째 값 반환
// 컬럼을 하나만 제시하면 IFNULL과 동일
SELECT COALESCE(Column명1, Column명1이 NULL인 경우 대체할 값)
FROM 테이블명
// 컬럼이 여러개 주어지면 차별점 생기지
// Column1 ~ 4 중 NULL이 아닌 첫 번째 Column을 출력
SELECT COALESCE(Column명1, Column명2, Column명3, Column명4)
FROM 테이블명
- CASE
select
case
when (조건) then (참일 때 값)
else (나머지 경우일 때 값)
end
from table
DATE_FORMAT
SELECT DATE_FORMAT(NOW(), '날짜형식') FROM table