[Oracle]
- 날짜 간 차이 구하기
> 따로 함수가 없어서 (날짜1 - 날짜2) 하면 된다고 한다.
- 날짜 더하기 & 빼기
> 날짜 add_month()를 쓰는 법도 있지만
> (DATE + INTERVAL N 날짜 단위)를 통해 가능하다. (이 방법이 훨씬 편리함)
[MySQL]
- DATE_ADD(기준 날짜, INTERVAL n second | minute | hour | day | month 등)
> 기준 날짜에 해당 시간을 더해준다.
- DATE_SUB(기준 날짜, INTERVAL n second | minute | hour | day | month 등 )
>기준 날짜에 해당 시간을 뺀다.
- DATEDIFF(날짜1, 날짜2)
> 날짜1과 날짜2의 일(Day) 차이
- TIMESTAMPDIFF( second | minute | hour | day | month 등, 날짜1, 날짜2)
> 날짜 1과 날짜2의 날짜 단위 차이
[관련해서 풀어본 문제(Leetcode)] https://leetcode.com/problems/rising-temperature/
-- ORACLE
-- Oracle은 날짜 차이를 구하는 함수가 별도로 없다고 한다.
SELECT a.id
FROM weather a,weather b
WHERE 1=1
and a.temperature > b.temperature
and a.recordDate - b.recordDate = 1
-- MySQL_DATE_SUB
SELECT ID
FROM Weather A
WHERE 1=1
AND A.temperature > (select temperature
from weather
where recordDate = DATE_SUB(A.recordDate,INTERVAL 1 DAY))
--MySQL_DATEDIFF
SELECT a.id
FROM weather a,weather b
WHERE 1=1
and a.temperature > b.temperature
and DATEDIFF(a.recordDate,b.recordDate)=1
'[스파르타코딩클럽]데이터분석 과정 > SQL' 카테고리의 다른 글
[SQL] 순위 매기기 (0) | 2024.01.01 |
---|---|
[SQL] ROLLUP_총계, 소계 구하기 (0) | 2024.01.01 |
[SQL코드카타] 83~85번 (LeetCode) (0) | 2023.12.30 |
[SQL] 데이터 형 변환 (0) | 2023.12.29 |
[SQL] NULL 값과 Empty String (0) | 2023.12.29 |