powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Правильный запрос
4 сообщений из 4, страница 1 из 1
Правильный запрос
    #33664610
TAURUS_iv43
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть таблица в которой немерянно полей. Мне надо одним запросом извлечь из неё много данных. Например столбец "Адрес" по ID 32 и 23 и 45 и тд. Впринципе можно это сделать через OR. А как таким же способом записать разные значения столбца "Адрес" у которого ID разные? Например:

ID | address
------------
32 | сюда надо 800006
33 | сюда 8000987
34 | сюда 650009

Всё это надо сделать одним запросом для уменьшения загрузки на БД. А то таких запросов производится около 30 в секунду.

Заранее благодарен.
...
Рейтинг: 0 / 0
Правильный запрос
    #33666206
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
update t1 set name = a.name from ( select 1 as id, 'foo' as name union select 2 as id, 'bar' as name ) as a where t1.id = a.id;
...
Рейтинг: 0 / 0
Правильный запрос
    #33670404
TAURUS_iv43
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так оно же обновит только одну ячейчку, а надо чтоб сразу три!
...
Рейтинг: 0 / 0
Правильный запрос
    #33670428
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
=> create table t1 ( id integer, name text );
CREATE TABLE
=> insert into t1 values ( 1, 'mama' );
INSERT 59278540 1
=> insert into t1 values ( 2, 'papa' );
INSERT 59278541 1
=> select * from t1;
id | name
----+------
1 | mama
2 | papa
(2 rows)
=> update t1 set name = a.name from ( select 1 as id, 'foo' as name union select 2 as id, 'bar' as name ) as a where t1.id = a.id;
UPDATE 2
=> select * from t1;
id | name
----+------
1 | foo
2 | bar
(2 rows)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Правильный запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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