Database
 sql >> Base de Dados >  >> RDS >> Database

Instrução SQL INSERT INTO


A instrução SQL INSERT INTO adiciona dados às tabelas recém-criadas ou tabelas existentes. Podemos adicionar registros únicos ou vários registros em uma tabela usando esta consulta.

Há duas maneiras possíveis de adicionar dados a uma tabela:
  • Mencione o nome do campo e os valores são adicionados à tabela.
  • Se adicionarmos valores para todos os campos da tabela, não precisamos mencionar o nome do campo na instrução ou consulta SQL INSERT INTO. Mas certifique-se de que a ordem dos valores seja a mesma das colunas na tabela.

Sintaxe para a instrução SQL INSERT INTO mencionando os nomes dos campos na instrução ou consulta:
INSERT INTO Table_Name (Column_Name1, Column_Name2, Column_Name3, Column_Name4, Column_Name5) VALUES (Value1, Value2, Value3, Value4, Value5);

Column_Name1, Column_Name2, Column_Name3, Column_Name4, Column_Name5 são os nomes dos campos nas tabelas nas quais queremos adicionar valores.

A sintaxe para a instrução SQL INSERT INTO sem mencionar os nomes dos campos na instrução ou consulta:
INSERT INTO Table_Name VALUES (Value1, Value2, Value3, Value4, Value5);

A sintaxe acima é utilizada para inserir valores em todos os campos das tabelas.

As instruções a seguir criariam oito registros na tabela Customer.

INSERT INTO Customer (Customer_Id, Customer_Name, Idade, Endereço, Salário)

VALUES (1, 'Rakesh', 32, 'Ahmedabad', 20000);

INSERT INTO Customer (Customer_Id, Customer_Name, Idade, Endereço, Salário)

VALORES (2, 'Kamlesh', 27, 'Delhi', 15.000);

INSERT INTO Customer (Customer_Id, Customer_Name, Idade, Endereço, Salário)

VALUES (3, 'kaustubh', 25, 'Pune', 20000);

INSERT INTO Customer (Customer_Id, Customer_Name, Idade, Endereço, Salário)

VALORES (4, 'Chaitali', 25, 'Mumbai', 15.000);

INSERT INTO Customer (Customer_Id, Customer_Name, Idade, Endereço, Salário)

VALORES (5, 'Himesh', 29, 'Delhi', 45000);

INSERT INTO Customer (Customer_Id, Customer_Name, Idade, Endereço, Salário)

VALORES (6, 'Komal', 22, 'MP', 45000);

INSERT INTO Customer (Customer_Id, Customer_Name, Idade, Endereço, Salário)

VALORES (7, 'Nikhlesh', 28, 'Delhi', 40.000);

INSERT INTO Customer (Customer_Id, Customer_Name, Idade, Endereço, Salário)

VALORES (8, 'Kamolika', 24, 'Pune', 50.000);

Na instrução INSERT INTO acima, adicionamos os registros na tabela Customer mencionando os nomes dos campos da tabela.

Podemos adicionar os dados à tabela sem mencionar o nome do campo da tabela:

As instruções de exemplo a seguir criariam seis registros na tabela Customer.

INSERIR VALORES DO CLIENTE (9, 'Raman', 30, 'Mumbai', 35500);

INSERIR VALORES DO CLIENTE (10, 'Manoj', 40, 'Pune', 45000);

INSERIR VALORES DO CLIENTE (11, 'Shweta', 26, 'MP', 42500);

INSERIR VALORES DO CLIENTE (12, 'Shivani', 25, 'Delhi', 50.000);

INSERIR VALORES DO CLIENTE (13, 'Rahul', 28, 'Nashik', 34000);

INSERIR VALORES DO CLIENTE (14, 'Sahil', 22, 'Nashik', 27000);

No exemplo da instrução INSERT INTO acima, adicionamos os registros sem mencionar o nome dos campos na consulta.

Todas as consultas acima gerariam os seguintes dados na tabela Cliente, conforme mostrado abaixo:
Customer_Id Nome_cliente Idade Endereço Salário
1 Rakesh 32 Ahmedabad 20.000
2 Kamlesh 27 Delhi 15.000
3 Kausubh 25 Punha 20.000
4 Chaitali 25 Mumbai 15.000
5 Himesh 29 Delhi 45.000
6 Komal 22 MP 45.000
7 Niklesh 28 Delhi 40.000
8 Camolika 24 Punha 50.000
9 Raman 30 Mumbai 35500
10 Mano 40 Punha 45.000
11 Shweta 26 MP 42500
12 Shivani 25 Delhi 50.000
13 Raul 28 Nashik 34000
14 Sahil 22 Nashik 27.000

Instrução INSERT INTO SELECT.


A instrução INSERT INTO SELECT também é uma maneira de adicionar registros à tabela. A instrução INSERT INTO SELECT é usada para inserir registros em uma tabela da tabela existente. Onde todos os campos e a ordem dos campos são iguais.

Criaremos outro Cliente e usaremos os mesmos campos da tabela Cliente acima.
CREATE TABLE Customers (Customer_Id int Primary key, Customer_Name varchar(40), Age int, Address Varchar(20), Salary int);

Use o comando DESC seguido pelo nome da tabela Customers para mostrar a estrutura da tabela.
Campos Tipo Nulo Chave Padrão Extras
Customer_Id Int(11) NÃO PRI NULO
Nome_Cliente Varchar(40) SIM NULO
Idade Int(11) SIM NULO
Endereço Varchar(20) SIM NULO
Salário Int(11) SIM NULO

Podemos adicionar registros em uma tabela por meio da instrução SELECT sobre outra tabela.

Sintaxe de INSERT INTO SELECT:
INSERT INTO Table1 [(Column_Name1, Column_Name2, Column_Name3, Column_Name4, Column_Name5)] SELECT Column_Name1, Column_Name2, Column_Name3, Column_Name4, Column_Name5 FROM Table2;

Exemplo da instrução INSERT INTO SELECT:
INSERT INTO Customers SELECT * FROM Customer;

No exemplo INSERT INTO SELECT da consulta acima, todos os registros da tabela Customer são adicionados à tabela Customers.

Os seguintes dados na tabela Clientes são mostrados abaixo:
Customer_Id Nome_cliente Idade Endereço Salário
1 Rakesh 32 Ahmedabad 20.000
2 Kamlesh 27 Delhi 15.000
3 Kausubh 25 Punha 20.000
4 Chaitali 25 Mumbai 15.000
5 Himesh 29 Delhi 45.000
6 Komal 22 MP 45.000
7 Niklesh 28 Delhi 40.000
8 Camolika 24 Punha 50.000
9 Raman 30 Mumbai 35500
10 Mano 40 Punha 45.000
11 Shweta 26 MP 42500
12 Shivani 25 Delhi 50.000
13 Raul 28 Nashik 34000
14 Sahil 22 Nashik 27.000