Re: Storing an ordered list

Поиск
Список
Период
Сортировка
От Bruno Wolff III
Тема Re: Storing an ordered list
Дата
Msg-id 20060727131823.GA30179@wolff.to
обсуждение исходный текст
Ответ на Re: Storing an ordered list  ("Michael Artz" <mlartz@gmail.com>)
Список pgsql-sql
On Wed, Jul 26, 2006 at 20:13:03 -0400, Michael Artz <mlartz@gmail.com> wrote:
> On 7/26/06, Bruno Wolff III <bruno@wolff.to> wrote:
> >If you use numeric instead of int, then it is easy to insert new values.
> 
> Hmm, hadn't thought about that.  How would you normally implement it?
> I'm thinking that, if I wanted to insert between A and B, I could take
> (A.order + B.order)/2, which would be pretty simple.  Is there a
> better way?

I think that will depend. To keep the size of the number down, you will
probably want to use the number with the fewest digits to the right of the
decimal point that gives you a number between the two values. That will be
a bit more complicated than the above formula. But you will want to do
something to keep the size of the numerics down since it seems like reordering
will be common.

Another issue to consider is concurrency. You may want to lock the table
against concurrent reordering, as doing two at once may lead to some unexpected
events.


В списке pgsql-sql по дате отправления:

Предыдущее
От: "Michael Artz"
Дата:
Сообщение: Re: Storing an ordered list
Следующее
От: "Daniel Caune"
Дата:
Сообщение: PostgreSQL server terminated by signal 11