Re: Function Help

From: merlyn(at)stonehenge(dot)com (Randal L(dot) Schwartz)
To: "Brian C(dot) Doyle" <bcdoyle(at)mindspring(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Function Help
Date: 2001-09-25 00:29:19
Message-ID: m1bsk0ru3k.fsf@halfdome.holdit.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

>>>>> "Brian" == Brian C Doyle <bcdoyle(at)mindspring(dot)com> writes:

Brian> Hello all,
Brian> I am working on a function to determine the date of the first saturday
Brian> of the month.

Brian> Currently I have:

Brian> CREATE FUNCTION first_saturday(date)
Brian> RETURNS date
Brian> AS '
Brian> Select CASE WHEN date_part(\'dow\',\'$1\'::DATE)=0 THEN date(\'$1\')+6
Brian> WHEN date_part(\'dow\',\'$1\'::DATE)=1 THEN date(\'$1\')+5
Brian> WHEN date_part(\'dow\',\'$1\'::DATE)=2 THEN date(\'$1\')+4
Brian> WHEN date_part(\'dow\',\'$1\'::DATE)=3 THEN date(\'$1\')+3
Brian> WHEN date_part(\'dow\',\'$1\'::DATE)=4 THEN date(\'$1\')+2
Brian> WHEN date_part(\'dow\',\'$1\'::DATE)=5 THEN date(\'$1\')+1
Brian> WHEN date_part(\'dow\',\'$1\'::DATE)=6 THEN date(\'$1\')+0
Brian> END'LANGUAGE 'sql'

Brian> I get an error that $1 is not a valid date. But I want that to be the
Brian> variable I enter...
Brian> what Am I doing wrong???

Working too hard? :)

why not just:

My_Col + 6 - date_part('dow', My_Col)

Don't even need a function for that. :)

--
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<merlyn(at)stonehenge(dot)com> <URL:http://www.stonehenge.com/merlyn/>
Perl/Unix/security consulting, Technical writing, Comedy, etc. etc.
See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training!

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Brian C. Doyle 2001-09-25 00:30:55 Re: Function Help
Previous Message Mayan 2001-09-25 00:18:35 Linking app to PgSQL