Как вставить несколько записей в SQL
Эй, ребята! В этой статье мы сосредоточимся на способах вставки нескольких строк в SQL.
Необходимость SQL Insert INTO Несколько строк запроса
Запрос SQL INSERT вставляет данные в столбцы определенной таблицы.
Обычный запрос SQL INSERT вводит значения данных в одну строку. В случае, когда мы хотим вставить данные сразу в несколько строк, этот запрос завершается ошибкой.
Таким образом, чтобы сэкономить время выполнения, нам нужно использовать SQL-запрос INSERT таким образом, чтобы он вводил данные сразу в несколько строк.
Поняв необходимость запроса SQL Insert для нескольких строк, давайте начнем с его реализации.
Традиционный запрос SQL INSERT для вставки нескольких записей
Традиционный SQL-запрос INSERT вводит входные данные в несколько строк. В этом методе нам нужно вставлять запрос столько раз, сколько мы хотим ввести данные в строки таблицы.
Основным недостатком этого запроса являются накладные расходы на выполнение каждого запроса на вставку для вставки нескольких строк.
Пример:
create table Info(id integer, Cost integer, city varchar(200));
insert into Info(id, Cost,city) values(1, 100,"Pune");
insert into Info(id, Cost,city) values(2, 50, "Satara");
insert into Info(id, Cost,city) values(3, 65,"Pune");
insert into Info(id, Cost,city) values(4, 97,"Mumbai");
insert into Info(id, Cost,city) values(5, 12,"USA");
select * from Info;
Выход:
1 100 Pune
2 50 Satara
3 65 Pune
4 97 Mumbai
5 12 USA
Запрос INSERT-SELECT-UNION для вставки нескольких записей
В предыдущем разделе мы узнали, что запрос INSERT INTO вводит несколько записей. Но если мы посмотрим на его вывод, мы узнаем, что предложение «INSERT INTO» повторяется много раз.
Таким образом, мы можем использовать запрос INSERT-SELECT-UNION для вставки данных в несколько строк таблицы.
Запрос SELECT через оператор INSERT.
create table Info(id integer, Cost integer);
INSERT INTO Info (id, Cost)
SELECT 1, '123'
UNION ALL
SELECT 2, '234'
UNION ALL
SELECT 3, '456';
select * from Info;
Выход:
1 123
2 234
3 456
Построение строки для вставки нескольких записей
Запрос SQL INSERT используется таким образом, что мы используем один запрос INSERT для вставки нескольких записей в одной точке выполнения.
Синтаксис:
INSERT INTO Table (columns)
VALUES (val1, val2, valN);
Пример:
create table Info(id integer, Cost integer,city nvarchar(200));
INSERT INTO Info (id,Cost,city)
VALUES (1,200, 'Pune'), (2, 150,'USA'), (3,345, 'France');
select * from Info;
Выход:
1 200 Pune
2 150 USA
3 345 France
Заключение
На этом мы подошли к концу этой темы. Здесь мы рассмотрели три различных метода вставки значений данных в несколько записей таблицы.
Пожалуйста, не стесняйтесь комментировать, если у вас возникнут какие-либо сомнения.
Дополнительные сообщения, связанные с SQL, см. на странице SQL JournalDev.
Рекомендации
- Вставка SQL в несколько строк — StackOverFlow