SELECT _with절
[MYSQL] With 절 사용 방법
MySQL에서 'WITH'절은 서브쿼리를 만들고 재사용 가능한 공통 테이블 표현식(Common Table Expression, CTE)을 정의하는 방법입니다. WITH절을 사용하여 쿼리를 단순화하고 가독성을 높일 수 있습니다. 다음
dbaant.tistory.com
UNION(DISTINCT), UNION ALL
https://sewonzzang.tistory.com/45
[SQL] UNION / UNION ALL, WITH
UNION / UNION ALL UNION : 조회한 다수의 SELECT문을 하나로 합치고 싶을 때 유니온(UNION)을 사용할 수 있습니다. UNION은 UNION (DISTINCT)와 UNION ALL 문 두 가지가 있습니다. UNION (DISTINCT) : 중복되는 레코드를
sewonzzang.tistory.com
* 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 참고
[MySQL] DATETIME 원하는 유형으로 변경 (YYMMDD)
MySQL에서 DATETIME 타입은 YYYY-MM-DD hh:mm:ss 와 같은 형식으로 반환한다.실제로 이걸 이대로 쓴적은 한번도 없는거 같다. 그래서 필요에 따라서 YYYY-MM-DD까지만 짤라서 쓰거나 시분초가 필요없을때는
velog.io
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 |