Re: My First Function

From: "omid omoomi" <oomoomi(at)hotmail(dot)com>
To: gary(dot)stainburn(at)ringways(dot)co(dot)uk, pgsql-sql(at)postgresql(dot)org
Subject: Re: My First Function
Date: 2001-07-04 12:40:11
Message-ID: F73wBP8xidGVwPGxgel00000e29@hotmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hi,
Then you would need some more normalized tables. But anyway ...

create function maxfunc(text,text)
returns int4 as '
select Max(PPERM) from permtable,holdertables
where PFID = $1 and PPID = HPID and HMID= $2 group by PPID; '
language 'sql' ;

...where $1,$2 are the arguments.

This would give you the corresponding access level number.

But If using PHP then you may have some thing like this:

<?php
$conn = pg_pconnect("localhost","","","","DB");
$result = pg_Exec ($conn, " select Max(PPERM) from permtable,holdertables
where PFID = $1 and PPID = HPID and HMID= $2 group by PPID; ");

if (!$result) { $Acclevel = -1 ; } /* if no record found
else { $Acclevel = pg_result($result,0,0);) /* if found a record

?>

I havn't test it my self, but sure it would work.

good luck
Omid

>From: Gary Stainburn <gary(dot)stainburn(at)ringways(dot)co(dot)uk>
>To: "omid omoomi" <oomoomi(at)hotmail(dot)com>, gary(dot)stainburn(at)ringways(dot)co(dot)uk,
>pgsql-sql(at)postgresql(dot)org
>Subject: Re: [SQL] My First Function
>Date: Tue, 3 Jul 2001 17:08:06 +0100
>
>Okay, thanks for that.
>
>I'm getting far enough with my SQL to be able to read and understand that
>one, but how do I put that into a plsql function and how do I call it.
>
>Lets asume I've changed the relationship so that there is only one person
>per
>position, so only one integer should be returned. How do I get that
>integer
>returned to my perl/php script, and how do I return -1 if the result of the
>query is empty?
>
>Gary
>
>On Sunday 01 July 2001 5:39 pm, omid omoomi wrote:
> > >I want to be able to pass a member ID and a function ID and return the
> > >highest permission for the two. The cut-down schema is:
> >
> > Hello ,
> > Perhaps this SQL works for you:
> >
> > select PPID,Max(PPERM)
> > from permtable
> > where
> > PFID = 'FUNCTION_ID'
> > and
> > PPID in ( select HPID from holdertable where HMID='MEMBER_ID' )
> > group by PPID;
> >
> > You will face some problems returning more than one value from this SQL
>if
> > using it in a function.
> > Though,I believe if you are going to use a PHP script it can easilly be
> > handled with it.
> >
> > Hope that helps
> > Omid Omoomi
> >
>_________________________________________________________________________
> > Get Your Private, Free E-mail from MSN Hotmail at
>http://www.hotmail.com.
>
>--
>Gary Stainburn
>
>This email does not contain private or confidential material as it
>may be snooped on by interested government parties for unknown
>and undisclosed purposes - Regulation of Investigatory Powers Act, 2000
>
>---------------------------(end of broadcast)---------------------------
>TIP 4: Don't 'kill -9' the postmaster

_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Gary Stainburn 2001-07-04 12:41:29 Re: My First Function
Previous Message Bhuvan A 2001-07-04 04:45:23 Re: problem with date/time constants