Instrução INSERT INTO SELECT
Citação de Marcos Soares em 18/03/2022, 13:35Olá, pessoal. Compartilhar com vocês uma variação do comando INSERT, onde através de um SELECT, os dados podem ser inseridos em uma tabela. Funcionalidade que utilizo muito no dia a dia e otimiza demais os processos de cadastro.
Basicamente a instrução INSERT INTO SELECT copia os dados coletados via SELECT e o importa na tabela definida, porém requer que os tipos de dados nas tabelas de origem e destino correspondam.
SINTAXE PADRÃO INSERT
INSERT INTO TABELA VALUES (1,'MARCOS');
INSERT INTO TABELA (ID, NOME) VALUES (1,'MARCOS');
SINTAXE INSERT INTO SELECT
INSERT INTO tabela1
SELECT * FROM tabela2
WHERE condição;INSERT INTO tabela1 (coluna1, coluna2, coluna3, ...)
SELECT coluna1, coluna2, coluna3, ...
FROM tabela2
WHERE condição;Algumas funções como sequence.nextval, sequence.currval, auto_increment funcionam normalmente nesse tipo de instrução.
Abaixo deixo um link para maiores esclarecimentos quanto a instrução.
https://docs.oracle.com/cd/E17952_01/mysql-5.6-en/insert-select.html
Deixo em anexo também alguns exemplos.
Espero que lhe seja útil.
Olá, pessoal. Compartilhar com vocês uma variação do comando INSERT, onde através de um SELECT, os dados podem ser inseridos em uma tabela. Funcionalidade que utilizo muito no dia a dia e otimiza demais os processos de cadastro.
Basicamente a instrução INSERT INTO SELECT copia os dados coletados via SELECT e o importa na tabela definida, porém requer que os tipos de dados nas tabelas de origem e destino correspondam.
SINTAXE PADRÃO INSERT
INSERT INTO TABELA VALUES (1,'MARCOS');
INSERT INTO TABELA (ID, NOME) VALUES (1,'MARCOS');
SINTAXE INSERT INTO SELECT
INSERT INTO tabela1
SELECT * FROM tabela2
WHERE condição;INSERT INTO tabela1 (coluna1, coluna2, coluna3, ...)
SELECT coluna1, coluna2, coluna3, ...
FROM tabela2
WHERE condição;
Algumas funções como sequence.nextval, sequence.currval, auto_increment funcionam normalmente nesse tipo de instrução.
Abaixo deixo um link para maiores esclarecimentos quanto a instrução.
https://docs.oracle.com/cd/E17952_01/mysql-5.6-en/insert-select.html
Deixo em anexo também alguns exemplos.
Espero que lhe seja útil.
Arquivos enviados:- Você precisa fazer o login para ter acesso aos uploads.