SELECT _with절
UNION(DISTINCT), UNION ALL
https://sewonzzang.tistory.com/45
* MySQL 날짜&시간 데이터타입
DATETIME : YYYY-MM-DD hh:mm:ss ( 현재날짜 : now() )
DATE : YYYY-MM-DD
TIMESTAMP : YYYY-MM-DD hh:mm:ss , 자동 업데이트
TIME : hh:mm:ss
YEAR : YYYY
* 날짜형식변환
DATE_FORMAT()
STR_TO_DATE()
UNIX_TIMESTAMP()
FROM_UNIXTIME()
* DATE_FORMAT 참고
DATE 타입에서 DATE_FORMAT으로 %Y-%m-%d %h:%m:%s 형식 지정하면 시분초값은 0으로 채워짐.
%Y-%m-%d => 2024-02-27
* case when 조건문
SELECT
case when 조건1 then 반환값1
when 조건2 then 반환값2
else 반환값3
end as Name
FROM Table
SUM (case when 조건 then 반환값1 elas 반환값2 end)
=> 조건에 해당하는 값의 count를 셀 때 반환값1 대신 1, 반환값2 대신 0 을 넣어주면 된다. ***
[ null 값 처리 ]
* IFNULL : 해당 column의 값이 null을 반환할 때, 다른 값을 출력하도록 지정하는 함수.
SELECT IFNULL ( column명, "대체값" ) FROM Table
** null값과 공백 둘 다 처리 **
IFNULL ( column명, ' ' ) != ' '
=> IFNULL함수를 통해 NULL인 경우를 ' ' (공백)으로 반환하고, ' ' (공백) 이 아닌 값들만 선택.
* IF & IS NULL
SELECT IF ( IS NULL(column명), "True반환값", "False반환값" ) FROM Table
* CASE (WHEN .. THEN .. ELSE .. ) END
* COALESCE : 처음으로 만나는 NULL이 아닌 값을 출력.
SELECT COALESCE ( column명, "대체값" ) FROM Table
SELECT COALESCE ( column1, column2, column3, column4 ) FROM Table
=> column1 ~ column4 중 NULL이 아닌 첫 번째 column을 출력
* SUBSTRING, SUBSTR 문자열추출
'Database > MySQL' 카테고리의 다른 글
[SQL] RANK(), DENSE_RANK() (0) | 2024.11.27 |
---|---|
[DB문법] 집계함수, group by, grouping, rollup (0) | 2024.03.04 |
[데이터베이스(강의)] 9. stored function (0) | 2024.02.07 |
[데이터베이스(강의)] 8. SQL로 데이터 조회 (group by, aggregate function, order b) (0) | 2024.02.06 |
[데이터베이스(강의)] 8. SQL로 데이터 조회 (join) (0) | 2024.02.05 |