

Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
Considere as tabelas T1 e T2, exibidas abaixo com suas respectivas instâncias.
T1
A | B |
1 | 1 |
2 | 2 |
4 | 2 |
T2
A | B |
1 | 10 |
2 | 20 |
O administrador de banco de dados do TJSE deverá criar um script em MySQL para realizar a carga de dados da TABELA A para a TABELA B, considerando que:
∙ a TABELA A foi criada pelo script:
CREATE TABLE a (
id INT AUTO_INCREMENT PRIMARY KEY,
descricao VARCHAR(255) NOT NULL,
custo DECIMAL(10, 2),
tipo CHAR(1),
CHECK (tipo IN ('A', 'B', 'C'))
);
∙ a TABELA B foi criada pelo script:
CREATE TABLE b (
id INT AUTO_INCREMENT PRIMARY KEY,
descricao VARCHAR(255) NOT NULL,
custo DECIMAL(10, 2) NOT NULL,
tipo TINYINT,
CHECK (tipo IN (1,2,3))
);
∙ A TABELA A foi carregada e a coluna CUSTO possui valores NULOS.
O script para carregar os dados da TABELA A para a TABELA B é:
INSERT INTO b
SELECT *
FROM a;
COMMIT;
INSERT INTO b (id, descricao, custo, tipo)
SELECT id, descricao, custo, tipo
FROM a
WHERE custo is NOT NULL;
COMMIT;
INSERT INTO b (id, descricao, custo, tipo)
SELECT id, descricao, custo, tipo
FROM a
WHERE custo is NOT NULL
AND tipo IN (1, 2, 3);
COMMIT;
INSERT INTO b (id, descricao, custo, tipo)
SELECT id, descricao, COALESCE(custo, 0) as
custo,
CASE tipo
WHEN 'A' THEN 1
WHEN 'B' THEN 2
WHEN 'C' THEN 3
END AS tipo
FROM a;
COMMIT;
INSERT INTO b (id, descricao, custo, tipo)
SELECT id, descricao, COALESCE(custo, 0) as
custo,
CASE tipo
WHEN 1 THEN 'A'
WHEN 2 THEN 'B'
WHEN 3 THEN 'C'
END AS tipo
FROM a;
COMMIT;