date_part patch - Mailing list pgsql-patches

From Marc Balmer
Subject date_part patch
Date
Msg-id 200109090929.JAA20359@pronet.ch
Whole thread Raw
Responses Re: date_part patch  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-patches
Attached is small patch that extends the date_part function to return the
day of week and day of year respectively.

Two new tokens are introduced, weekday and yearday to allow
for the retrieval of the day number since sunday (0-6) or the day
number since january, 1 from a date value.

I use it to retrieve events on specific weekdays, e.g. all events
that occur on mondays:

SELECT * FROM events WHERE date_part('weekday', eventdate) = 1;

The following files are patched:

src/backend/utils/adt/datetime.c:
Extends "units" table to recognize the new tokens

src/backend/utils/adt/timestamp.c:
Extends timestamp2tm() function to return the fields tm_mday and tm_yday
Extends timestamp_part() function to return the day of week or day of year

src/include/utils/datetime.h:
Defines new tokens DTK_WEEKDAY, DTK_YEARDAY


--
Marc Balmer, Micro Systems, Kannenfeldstrasse 32, CH-4056 Basel
Tel +41 61 383 05 10, Fax +41 61 383 05 12, http://www.msys.ch/
Attached is small patch that extends the date_part function to return the
day of week and day of year respectively.

Two new tokens are introduced, weekday and yearday to allow
for the retrieval of the day number since sunday (0-6) or the day
number since january, 1 from a date value.

I use it to retrieve events on specific weekdays, e.g. all events
that occur on mondays:

SELECT * FROM events WHERE date_part('weekday', eventdate) = 1;

The following files are patched:

src/backend/utils/adt/datetime.c:
Extends "units" table to recognize the new tokens

src/backend/utils/adt/timestamp.c:
Extends timestamp2tm() function to return the fields tm_mday and tm_yday
Extends timestamp_part() function to return the day of week or day of year

src/include/utils/datetime.h:
Defines new tokens DTK_WEEKDAY, DTK_YEARDAY

<Der Anhang fehlt>
--
Marc Balmer, Micro Systems, Kannenfeldstrasse 32, CH-4056 Basel
Tel +41 61 383 05 10, Fax +41 61 383 05 12, http://www.msys.ch/

Attachment

pgsql-patches by date:

Previous
From: Barry Lind
Date:
Subject: Re: Fix JDBC test suite, set/get transaction isolation level test in ConnectionTest
Next
From: Jeroen van Vianen
Date:
Subject: Re: [JDBC] [HACKERS] JDBC pg_description update needed for CVS