Обновите таблицу со строками из другой таблицы, используя цикл в OracleDB - PullRequest
0 голосов
/ 27 мая 2019

Я новичок в OracleDB и надеюсь помочь мне. У меня есть две таблицы, показанные на изображении ниже. Я хочу вставить любое количество строк из таблицы 2 в таблицу 1 с помощью цикла (возможно, в процедуре). Это может произойти, перебирая идентификаторы из таблицы 2 и вставляя выбранное мной в новую обновленную таблицу 1 Образ: enter image description here

Вторая таблица должна оставаться прежней, и я должен быть в состоянии сделать это с каждой строкой из Таблицы2, которая соответствует моим потребностям. Я написал псевдокод, но я не уверен, как его реализовать. Заранее спасибо!

1 Ответ

1 голос
/ 27 мая 2019

Это оригинал table1:

SQL> select * from table1;

        ID NAME            PHONE
---------- ---------- ----------
         1 Bob            123456
         2 Jake           654975
         3 Dillan         252487

Если вы хотите "скопировать" любые строки, которые вам нужны, тогда простой вариант - оператор SQL INSERTНапример,

SQL> insert into table1 (id, name, phone)
  2    select id, name, phone
  3    from table2
  4    where id = &par_id;
Enter value for par_id: 4

1 row created.

(&par_id - это переменная замещения SQL * Plus)

Или вы можете указать несколько из них в виде списка IN, например,

SQL> insert into table1 (id, name, phone)
  2    select id, name, phone
  3    from table2
  4    where id in (5, 6);

2 rows created.

В результате получается

SQL> select * from table1 order by id;

        ID NAME            PHONE
---------- ---------- ----------
         1 Bob            123456
         2 Jake           654975
         3 Dillan         252487
         4 Harley         265687
         5 Jack           244587
         6 Luther         259876

6 rows selected.

Или вы могли бы написать процедуру для этого (в цикле? Почему бы и нет, если она выполняет свою работу), но я предполагаю, что окончательный выбор зависитна то, что именно вы хотите сделать.В настоящее время я не вижу необходимости в PL / SQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...