올해 2014 있습니다ISO 표준에 따라 2015 년과 2016 년의 각 달에 몇 주가 있습니까?
Jan-4
Feb-4
Mar-5
Apr-4
May-4
Jun-5
Jul-4
Aug-4
Sep-5
Oct-4
Nov-4
Dec-5
어떻게 특정 연도에 대한이를 계산하기 위해?
올해 2014 있습니다ISO 표준에 따라 2015 년과 2016 년의 각 달에 몇 주가 있습니까?
Jan-4
Feb-4
Mar-5
Apr-4
May-4
Jun-5
Jul-4
Aug-4
Sep-5
Oct-4
Nov-4
Dec-5
어떻게 특정 연도에 대한이를 계산하기 위해?
정확하게 "월 단위"를 정의하는 여러 가지 방법이 있습니다. (당신의 숫자 표시로) 당신의 카운트가 정의 가정 :
이How many Mondays lie in each month of the year?
당신은 그런 식으로 생성 할 수 있습니다 :
간단한 :
SELECT EXTRACT(month FROM d) AS mon, COUNT(*) AS weeks
FROM generate_series('2014-01-01'::date
, '2014-12-31'::date
, interval '1 day') d
WHERE EXTRACT(isodow FROM d) = 1 -- only Mondays
GROUP BY 1
ORDER BY 1;
빠른 :
SELECT EXTRACT(month FROM d) AS mon, COUNT(*) AS weeks
FROM generate_series ('2014-01-01'::date -- offset to first Monday
+ (8 - EXTRACT(isodow FROM '2014-01-01'::date)::int)%7
, '2014-12-31'::date
, interval '7 days') d
GROUP BY 1
ORDER BY 1;
어느 쪽이든 너는 얻을 것이다 :
mon weeks
1 4
2 4
3 5
4 4
5 4
6 5
7 4
8 4
9 5
10 4
11 4
12 5
을 각 검색어의 해당 연도로 바꿉니다. 제안 한 달에 ISO 8601을 적용
ISO 표준은 한 달의 월요일 수와 관련이 없습니다. (나는 OP가 무엇을 얻으려고하는지 확신 할 수 없다.) 2014 년 첫 번째 월요일은 실제로 ISO 주와 관련하여 2013-12-30입니다. –
@Mike : * ISO * 2014 년 첫 번째 월요일은 2013-12-30입니다. 그레고리력의 첫 번째 월요일 ("2014"의 일반적인 의미)은 2014-01-06입니다. "한 달에 몇 주"는 ISO 또는 질문에 의해 정의되지 않습니다. 주어진 숫자에서 가장 가능성있는 의미를 리버스 엔지니어링했습니다. –
select
to_char(d, 'YYYY Mon') as "Month",
case when
extract(dow from d) in (2,3,4)
and
extract(day from (d + interval '1 month')::date - 1) + extract(dow from d) >= 33
then 5
else 4
end as weeks
from generate_series(
'2014-01-01'::date, '2014-12-31', '1 month'
) g (d)
;
Month | weeks
----------+-------
2014 Jan | 5
2014 Feb | 4
2014 Mar | 4
2014 Apr | 4
2014 May | 5
2014 Jun | 4
2014 Jul | 5
2014 Aug | 4
2014 Sep | 4
2014 Oct | 5
2014 Nov | 4
2014 Dec | 4
[월 주 PHP get 및 번호 (의 중복 가능성 http://stackoverflow.com/questions/5853380/php-get-number -of-week-for-month) – Sal00m
일주일에 번호 매기기를 위해 _rule_을 이해하지 않는 이유는 무엇입니까? http://en.wikipedia.org/wiki/ISO_week_date#Weeks_per_year –
질문에 의미가 없습니다. * ISO 표준은 몇 주에서 수개월 간의 연관성을 정의하지 않습니다. 날짜는 월과 일로 표시되거나 주와 요일로 표시됩니다 ** ** 결코 혼합 **. * http://en.wikipedia.org/wiki/ISO_week_date # Weeks_per_month – pozs