Я хочу вставить строку 100 раз в таблицу на основе count. Например, у меня есть таблица с table_id
, table_name
и хочет строкаДублировать строку 100 раз в SQL DEVELOPER
1,asd 2,asd 3,asd 4,asd ' ' ' 100,asd
Я ищу решение, используя SQL Developer.
Я хочу вставить строку 100 раз в таблицу на основе count. Например, у меня есть таблица с table_id
, table_name
и хочет строкаДублировать строку 100 раз в SQL DEVELOPER
1,asd 2,asd 3,asd 4,asd ' ' ' 100,asd
Я ищу решение, используя SQL Developer.
Вы можете использовать синтаксис connect by level
, чтобы легко получить результат.
select level, 'asd'
from dual
connect by level <= 100
Или, как FSP отмечает анонимный PL/SQL блок с петлей, которая не является столь же хорошим решением, как вы всегда должны использовать SQL над PL/SQL, если это возможно ...
begin
for i in 1 .. 100 loop
insert into my_table(table_id, table_name)
values(i, 'asd');
end loop;
end;
/
Если вы используете оракул это может быть сделано с помощью одного stamtement:
insert into your_table (table_id, table_name) select level, 'asd' from dual connect by level <= 100;
INSERT INTO ICKD (ICKD_APLN_ID, ICKD_CHR_KY1_ID, ICKD_RUN_ID) выберите уровень, 'asd', 1 FROM DUAL CONNECT BY LEVEL <= 100; Использование этого Я получаю следующее сообщение об ошибке – user1442692
Какая ошибка? Я не вижу никаких ошибок? –
@ user1442692, у вас есть три столбца, и вы только вставляете два. – Ben
Зачем вам нужно дублировать одни и те же данные, так много раз? –