Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Запрос для упорядочивания данных / 3 сообщений из 3, страница 1 из 1
30.06.2021, 14:17
    #40080934
Alex2001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос для упорядочивания данных
Добрый день!
Код: sql
1.
2.
3.
4.
5.
6.
7.
create table tmp
(
    a int primary key,
    b int
);
insert into tmp (a, b)
values (1, 30),(2,29),(3,35),(4,37),(5, 40);


Требуется отсортировать по столбцу b и обновить в нем данные в соответствии с порядковым номером записи в получившейся сортировке. Те должно получиться
Код: sql
1.
2.
insert into tmp (a, b)
values (1, 2),(2,1),(3,3),(4,4),(5, 5);


Возможно без временных таблиц, столбцов?
Спасибо заранее
...
Рейтинг: 0 / 0
30.06.2021, 14:28
    #40080939
court
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос для упорядочивания данных
Alex2001,

Код: sql
1.
2.
3.
4.
update tmp t1
set b = t2.rn
from (select a, row_number()over(order by b) rn from tmp ) t2
where t1.a=t2.a
...
Рейтинг: 0 / 0
30.06.2021, 17:25
    #40080987
Alex2001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос для упорядочивания данных
court, спасибо!
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Запрос для упорядочивания данных / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]