Re: need magic to shuffle some numbers

Поиск
Список
Период
Сортировка
От Tim Landscheidt
Тема Re: need magic to shuffle some numbers
Дата
Msg-id m3vctmlwtl.fsf@passepartout.tim-landscheidt.de
обсуждение исходный текст
Ответ на need magic to shuffle some numbers  (Andreas <maps.on@gmx.net>)
Список pgsql-sql
(anonymous) wrote:

> there is a table that has among others a integer primary key
> "id" and another integer column "prio" as well as an integer
> "group_id".

> I'd like to invert the values of the prio-column for one of the groups.
> The prio numbers start with 3 and there are 1159 different
> prios in this group.
> At least every value appeares only once.   :)

> Is there an elegant way to switch the prio values around so
> that every record with the first prio gehts the last and
> vice versa?
> Then the records with the second smallest prio get the
> second-to-last biggest value and v.v.

If you just want to reverse the priorities:

| UPDATE TestTable
|   SET prio = (SELECT MIN(prio) FROM TestTable WHERE group_id = 'testgroup') +
|              (SELECT MAX(prio) FROM TestTable WHERE group_id = 'testgroup') -
|              prio
|   WHERE group_id = 'testgroup';

Tim



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

Предыдущее
От: Tim Landscheidt
Дата:
Сообщение: Re: Confused about writing this stored procedure/method.
Следующее
От: ppdcc@sapo.pt
Дата:
Сообщение: new table with a select