티스토리 뷰
Postgresql 주차구하기
월요일 기준 주차 구하기
## 해당 일 기준으로 주차를 반환
select TO_CHAR('2022-01-02'::DATE,'IYYY-IW');
## 해당 일 기준으로 월요일의 날짜를 반환
select date_trunc('week', '2022-01-02'::DATE)::date as week_from_monday
## 월요일을 기준으로 해당 주에 해당하는 데이터
select date_trunc('week', '2022-01-02'::DATE)::date as week_from_monday
--, 원하는 집계함수를 작성하세요.
from att_week_data a
group by date_trunc('week', '2022-01-02'::DATE)::date
일요일 기준 주차 구하기
## 해당 일 기준으로 일요일의 날짜를 반환
select date_trunc('week', '2022-01-02'::DATE)::date - 1 as week_from_monday
## 일요일을 기준으로 해당 주에 해당하는 데이터
select date_trunc('week', '2022-01-02'::DATE)::date - 1 as week_from_monday
--, 원하는 집계함수를 작성하세요.
from att_week_data a
group by date_trunc('week', '2022-01-02'::DATE)::date - 1
월별 및 분기별 통계
## 월별
select date_trunc('month', '2022-01-02'::DATE)::date as month
-- , 원하는 집계함수를 작성하세요.
from att_month_data a
group by date_trunc('month', '2022-01-02'::DATE)::date
## 분기별
select date_trunc('quarter', '2022-01-02'::DATE)::date as quarter
--, 원하는 집계함수를 작성하세요.
from att_month_quarter a
group by date_trunc('quarter', '2022-01-02'::DATE)::date
통계에서 데이터가 없는 경우
DATE_SERIES(SERIAL_DAY) AS (
SELECT GENERATE_SERIES(
DATE_TRUNC('WEEK', '2025-04-08'::DATE)::DATE,
(DATE_TRUNC('WEEK', '2025-04-08'::DATE)::DATE + '6 DAYS'::INTERVAL)::DATE,
'1 DAY'::INTERVAL)::DATE
)
SELECT
*
FROM
DATE_SERIES DT
LEFT JOIN (
SELECT
*
FROM
ATT_WEEK_DATA AWD
WHERE
AWD.ID ='ID00001'
and
DATE_TRUNC('WEEK', '2025-04-08'::DATE)::DATE = DATE_TRUNC('WEEK', AWD.ATT_DT)::DATE
AND
AWD.M_ID ='M0000001'
) B ON DT.SERIAL_DAY=B.ATT_DT;
Postgresql 시간 변환
시간 차이를 분으로
SELECT ROUND(EXTRACT(EPOCH FROM '1735'::TIME - ('0700'::TIME))/60);
select interval '60 seconds' * (ROUND(EXTRACT(EPOCH FROM '1735'::TIME - ('0700'::TIME))/60))::INTEGER;
분을 시간으로 변경
select (interval '60 seconds' * 635)::TIME;
select PG_TYPEOF((select interval '60 seconds' * 635)::TIME);
Postgresql 요일 한글 변환
요일을 한글로 변환
SELECT SUBSTR('월화수목금토일',EXTRACT(ISODOW FROM CAST('2023-04-17' AS DATE))::INT,1);
'DATABASE > PostgreSql' 카테고리의 다른 글
[Postgresql]Postgresql에서 자동증가와 시퀀스 (0) | 2024.07.11 |
---|
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Letsencrypt+nginx
- 마이바티스CamelCase
- Intellj들여쓰기
- SSL인증서
- SSL
- Letsencrypt wildcard auto renew
- nginx
- logstash
- camelcase
- letencrypt
- 마이바티스
- 인증서자동갱신
- Letsencrypt wildcard
- letsencrypt
- elk8.x
- 인증서설치
- #logback
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함