Commit e39feb10 authored by Tom Lane's avatar Tom Lane

Improve documentation of EXTRACT(WEEK).

The docs showed that early-January dates can be considered part of the
previous year for week-counting purposes, but failed to say explicitly
that late-December dates can also be considered part of the next year.
Fix that, and add a cross-reference to the "isoyear" field.  Per bug
#7967 from Pawel Kobylak.
parent e016b724
...@@ -7151,16 +7151,19 @@ SELECT EXTRACT(SECOND FROM TIME '17:12:28.5'); ...@@ -7151,16 +7151,19 @@ SELECT EXTRACT(SECOND FROM TIME '17:12:28.5');
<listitem> <listitem>
<para> <para>
The number of the week of the year that the day is in. By definition The number of the week of the year that the day is in. By definition
(<acronym>ISO</acronym> 8601), the first week of a year (<acronym>ISO</acronym> 8601), weeks start on Mondays and the first
contains January 4 of that year. (The <acronym>ISO</acronym>-8601 week of a year contains January 4 of that year. In other words, the
week starts on Monday.) In other words, the first Thursday of first Thursday of a year is in week 1 of that year.
a year is in week 1 of that year. </para>
</para> <para>
<para> In the ISO definition, it is possible for early-January dates to be
Because of this, it is possible for early January dates to be part of the part of the 52nd or 53rd week of the previous year, and for
52nd or 53rd week of the previous year. For example, <literal>2005-01-01</> late-December dates to be part of the first week of the next year.
is part of the 53rd week of year 2004, and <literal>2006-01-01</> is part of For example, <literal>2005-01-01</> is part of the 53rd week of year
the 52nd week of year 2005. 2004, and <literal>2006-01-01</> is part of the 52nd week of year
2005, while <literal>2012-12-31</> is part of the first week of 2013.
It's recommended to use the <literal>isoyear</> field together with
<literal>week</> to get consistent results.
</para> </para>
<screen> <screen>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment