hello,
I was hoping someone might be able to help me with this problem...
I have a table that is essentially joined back to a parent table. I have a
column in the child table called "rank" that is a simple integer data type, used
to indicate the order that the child elements should be displayed in.
What I want to be able to do is make sure that at all times the child records
linked to a parent record have values for the "rank" field that are consecutive
starting at 1, ie (1,2,4,5,6) not (1,2,4,5,7).
Can someone offer the best suggestion to do this?
Should I write a PL/pgsql function and add it as a column constraint to check to
make sure the numbers are consecutive?
Can I use some kind of trigger that will execute a function and "automatically"
give the fields the correct number? Would this seriously impact the performance
since it would have to go through what might become a large table only to work on
a small part of it (ie, records with the same parent_id)?
I have a lot of experience with mySQL but a lot of these more sophisticated pgSQL
features are a little tough for me to get a handle on immediately... thanks very
much.
-Cliff