Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] 04 - Incluindo registros a partir de outra tabela (SOLUÇÃO)

Inclua todos os clientes na tabela CLIENTES baseados nos registros da tabela TABELA_DE_CLIENTES da base SUCOS_VENDAS.

Solução:

INSERT INTO CLIENTES
SELECT CPF, NOME, ENDERECO_1 AS ENDERECO, BAIRRO, CIDADE, ESTADO, CEP,
DATA_DE_NASCIMENTO AS DATA_NASCIMENTO, IDADE, SEXO, LIMITE_DE_CREDITO AS LIMITE_CREDITO,
VOLUME_DE_COMPRA AS VOLUME_COMPRA, PRIMEIRA_COMPRA
FROM SUCOS_VENDAS.TABELA_DE_CLIENTES
WHERE NOME NOT IN (SELECT NOME FROM CLIENTES);
1 resposta
solução!

Oi, Sarah! Como vai?

Parabéns pelo desenvolvimento da atividade. O momento de praticar é muito importante para a consolidação dos nossos aprendizados, continue assim!

O único ponto de atenção que gostaria de abordar é acerca do seguinte filtro:

WHERE NOME NOT IN (SELECT NOME FROM CLIENTES);

Em um cenário do mundo real, podem existir registros em um banco de dados cujas pessoas contêm o mesmo nome. Nesse sentido, precisamos analisar com muita atenção como será organizado o nosso filtro a fim de evitarmos problemas futuros em nosso projeto, como a falta ou o excesso de registros.

Uma outra maneira de inserir novos dados à tabela CLIENTES é utilizando como filtro o CPF do cliente, já que se trata de uma informação única.

Reescrevendo o código que você compartilhou, chegaríamos no seguinte resultado:

INSERT INTO CLIENTES
SELECT CPF, NOME, ENDERECO_1 AS ENDERECO, BAIRRO, CIDADE, ESTADO, CEP,
DATA_DE_NASCIMENTO AS DATA_NASCIMENTO, IDADE, SEXO, LIMITE_DE_CREDITO AS LIMITE_CREDITO,
VOLUME_DE_COMPRA AS VOLUME_COMPRA, PRIMEIRA_COMPRA
FROM SUCOS_VENDAS.TABELA_DE_CLIENTES
WHERE CPF NOT IN (SELECT CPF FROM CLIENTES);

Dessa forma, permitimos que pessoas, mesmo que com nomes iguais, façam parte da tabela CLIENTES, dado que o CPF de cada uma é diferente.

Espero que tenha gostado da minha dica, Sarah! Se surgirem dúvidas durante os seus estudos, conte com o fórum.

Até mais!