From: | will trillich <will(at)serensoft(dot)com> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | function to operate on same fields, different records? |
Date: | 2001-03-29 19:17:29 |
Message-ID: | 20010329131729.B27033@mail.serensoft.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
is this kind of thing possible---?
select gpa(student) from student where id=7121;
select gpa(course) from course where id=29931;
select gpa(prof) from prof where id=1321;
i've got several tables each of which have
create table <various-and-sundry> (
...
a int4,
b int4,
c int4,
d int4,
f int4,
...
);
since i'd like to AVOID this nonsense--
create view courseGPA as
select *,
(a * 4 + b * 3 + c * 2 + d)
/
(a + b + c + d + f) as gpa
from course;
create view profGPA as
select *,
(a * 4 + b * 3 + c * 2 + d)
/
(a + b + c + d + f) as gpa
from prof;
create view studentGPA as
select *,
(a * 4 + b * 3 + c * 2 + d)
/
(a + b + c + d + f) as gpa
from student;
i'd rather be able to do this--
create function gpa( unknowntableTuple ) returns float8 as '
select
($1.a * 4 + $1.b * 3 + $1.c * 2 + $1.d)
/
($1.a + $1.b + $1.c + $1.d + $1.f)
' language 'sql';
any chance of working something like that? if so, how? if not,
well, waaah!
--
does a brain cell think?
will(at)serensoft(dot)com
http://sourceforge.net/projects/newbiedoc -- we need your brain!
http://www.dontUthink.com/ -- your brain needs us!
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2001-03-29 19:39:21 | Re: missing data |
Previous Message | will trillich | 2001-03-29 19:09:50 | Re: timestamp/function question |