Ir para conteúdo

POWERED BY:

Arquivado

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

rogerio.prince

selecinar de uma tabela e inserir em outra

Recommended Posts

Pessoal preciso da ajuda de voçês

 

Eu preciso exibir uns registros que tem no select os seguintes parametros:

 

autor

status

data(mes e ano)

 

Por mês serão exibidos 4 registros de cada autor.

 

Problema 1: Até aqui tudo bem, só que eu me deparei com a possibilidade de algun mês não ter os 4 registros

de um autor e então ai eu não quero que fique o espaço vazio já que o design necessita dos 4 registros, quero

então que exibe o que falta com registros do mês anterior que é data diferente.

 

Dai mudei o select para usar top 4 e retirei o parametro data do select, porque assim ele exibe os 4 ultimos registros do autor independente da data.

 

Problema 2: Eu estou trabalhando com reservas, então o cara pode inserir um registro ( hoje mes 02 ) que devera ser exibido apenas no ( mes 04 ) por exemplo, dai inviabiliza usar top 4, porque eu posso inserir hoje um para o mês 04 e depois é que inserir um para o mês 03, mas com top o do mês 03 viria primeiro.

 

Solução: veja se meu pensamento esta correto: mative a tabela servicos com o select usando top 4

(é dela que exibo os registros no site ), e criei uma tabela com a mesma estrutura e chamei de reserva, que é onde eles irão inserir os dados. Daí pensei em todo dia 01 do mês realizar um select por data em reserva e gravar os registros na tabela serviços.

 

Como eu faço um select de uma tabela e insiro o resultado em outra tabela com a mesma estrutura?

 

Escrevi todo o problema porque se alguem tiver uma outra solução pode falar.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

acredito que não porque eu vou ter no banco de dados tanto registro de mes anteriores ao atual como tambem registros futuro.

 

ex: estou no mês 02 e no BD tem registros do mes 01, 02 como tambem já tem do mês 03.

 

então a unica forma de exibir no site os registros do mes 02 seria por data.

 

 

Estou longe do micro de trabalho agora, mas e se fizer um selet top com order by data DESC ?

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, nao entendi bem o problema, mas respondendo sua pergunta seria +- assim

 

insert into novaTabela(select * from tabelaAtual)

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu jonathandj pela dica, assim eu consigo copiar toda a tabela.

 

Agora como devo fazer para inserir apenas alguns campos especificos de um select.

 

SQL = "INSERT INTO SERVICOS (id_cliente,id_autor,status,data) values (SELECT id_cliente,id_autor,status,data FROM RESERVA WHERE month(data) = '03')"

 

Não estou conseguindo.

 

 

cara, nao entendi bem o problema, mas respondendo sua pergunta seria +- assim

 

insert into novaTabela(select * from tabelaAtual)

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

não se usa o VALUES quando tiver um Insert baseado em Select

 

SQL = "INSERT INTO SERVICOS (id_cliente,id_autor,status,data) SELECT id_cliente,id_autor,status,data FROM RESERVA WHERE month(data) = '03'"

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.