Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lucaswxp

insert + select

Recommended Posts

Olá, estou tentado inserir uma linha em minha tabela, mas tenho que usar INSERT e SELECT juntos... até ai tudo bem, mas o que acontece é que eu quero pegar apenas um registro da 'tabela_a' para inserir na 'tabela_b' e os outros campos da 'tabela_b' eu quero preencher 'manualmente' como faço? ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim

no INSERT você seta campo $linha[0] para tabela b

e outro INSERTpara $linha[1] isso usando o resultado obtido no PHP.

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Considerando que você esta utilizando o PHP

 

$query = "select nome.idade,sexo from Pesoas;";

ai dentro de um laço de repetiçao
while (ofinal da $linha nao chegar){

echo "linha[0]";
echo "linha[1]";
}

assim você escrevera $linha[0] e o campo nome

e $linha[1] e o campo idade

e $linha[2] e o sexo

 

e ja na propria selecao você insere

nas tabelas o que você kiser

 

insert into tabela a $linha[0]

insert into tabela b $linha[1]

e assim vai.

 

porem existe um jeito que você faz um select e ja insere em outra tabelasomente pelo sql, mas nao me lembro como e que faz.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se no MySQL este recurso é suportado, mas no sql server eu faria assim:

 

INSERT INTO TABELA_DESTINO (CAMPO1, CAMPO2, CAMPO3)
SELECT CAMPOA, CAMPOB, CAMPOC 
FROM TABELA_ORIGEM
WHERE CAMPOA = 'TESTE'

O código acima daria um ou vários inserts na tabela destino, dependendo do número de registros retornados pela select de consulta... o detalhe é que se na tabela destino existirem mais campos aléms dos informados no insert que exijam um preenchimento, a query não vai funcionar, a menos que insira algum valor nestes campos.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.