powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / продублировать записи в таблице с небольшими изменениями.
5 сообщений из 5, страница 1 из 1
продублировать записи в таблице с небольшими изменениями.
    #34542509
w
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
w
Гость
Имеется таблица T1 с данными

Код: plaintext
1.
2.
3.
4.
id   name   type
 1     aa       bb
 2     aa       bb
 3     aa       bb

Необходимо получить

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
id   name   type
 1     aa       bb
 2     aa       bb
 3     aa       bb
 4     aa       cc
 5     aa       cc
 6     aa       cc

Для генерации значения поля id используется последовательность seq1.
Вопрос как решить данную задачу. Если возможно, не прибегая к PL/PGsql
...
Рейтинг: 0 / 0
продублировать записи в таблице с небольшими изменениями.
    #34542604
Andrey Daeron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wИмеется таблица T1 с данными

Код: plaintext
1.
2.
3.
4.
id   name   type
 1     aa       bb
 2     aa       bb
 3     aa       bb

Необходимо получить

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
id   name   type
 1     aa       bb
 2     aa       bb
 3     aa       bb
 4     aa       cc
 5     aa       cc
 6     aa       cc

Для генерации значения поля id используется последовательность seq1.
Вопрос как решить данную задачу. Если возможно, не прибегая к PL/PGsql
Написать 3 инсерта? из серии:
Код: plaintext
1.
2.
3.
 INSERT INTO T1 (id,name,type) VALUES ( 4 ,'aa','cc');
 INSERT INTO T1 (id,name,type) VALUES ( 5 ,'aa','cc');
 INSERT INTO T1 (id,name,type) VALUES ( 6 ,'aa','cc');

Ну и подвинем генератор (если нужно, в условии ничего не сказано ):
Код: plaintext
1.
2.
 
 SELECT nextval('seq1'),nextval('seq1'),nextval('seq1');
...
Рейтинг: 0 / 0
продублировать записи в таблице с небольшими изменениями.
    #34542627
.gc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
.gc
Гость
Код: plaintext
1.
2.
insert into your_table (name, type)
  select name, 'cc' from your_table where name = 'aa';
...
Рейтинг: 0 / 0
продублировать записи в таблице с небольшими изменениями.
    #34542658
w
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
w
Гость
Имеется таблица T1 с данными
Код: plaintext
1.
2.
3.
4.
5.
id   name   type
 1     aa       bb
 2     da       xx
 3     db       xx
 4     ab       bb

Необходимо получить
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
id   name   type
 1     aa       bb
 2     da       xx
 3     db       xx
 4     ab       bb
 5     aa       cc
 6     ab       cc

То есть пройти по таблице, найти записи, где type='bb' и продублировать их, изменив type на 'cc' , соответсвенно, используя уникальный id.
Для генерации значения поля id используется последовательность seq1.

Вопрос как решить данную задачу? Если возможно, не прибегая к PL/PGsql
...
Рейтинг: 0 / 0
продублировать записи в таблице с небольшими изменениями.
    #34547081
Vladimir Sitnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wТо есть пройти по таблице, найти записи, где type='bb' и продублировать их, изменив type на 'cc' , соответсвенно, используя уникальный id.
Для генерации значения поля id используется последовательность seq1.
Что вижу то и пою?
Код: plaintext
1.
2.
3.
4.
insert into t1(id, name, type)
  select nextval('seq1'), name, 'cc'
    from t1
   where type='bb'
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / продублировать записи в таблице с небольшими изменениями.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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