Um programador recebeu como missão buscar o preço médio mensal do petróleo em uma tabela chamada PRECO_DIARIO e preencher isso em outra tabela chamada PRECO_MENSAL (inicialmente vazia), contendo uma linha para cada média mensal de cada tipo de petróleo.
Suponha que as tabelas sejam descritas como apresentado abaixo.
PRECO_DIARIO(TIPO,DATA,PRECO)
PRECO_MENSAL(TIPO,ANO,MES,PRECO)
Uma forma correta para realizar isso de uma só vez em SQL, na maioria dos SGDBs do mercado, é
- A. INSERT INTO PRECO_MENSAL (TIPO, ANO, MES, PRECO) SELECT TIPO, YEAR(DATA) ,MONTH(DATA), AVG(PRECO) FROM PRECO_DIARIO GROUP BY TIPO, YEAR(DATA) ,MONTH(DATA)
- B. INSERT TABLE PRECO_MENSAL (TIPO, ANO, MES, PRECO) SELECT TIPO, YEAR(DATA) ,MONTH(DATA), AVG(PRECO) FROM PRECO_DIARIO ORDER BY TIPO, YEAR(DATA) ,MONTH(DATA)
- C. INSERT INTO PRECO_MENSAL (TIPO, ANO, MES, PRECO) SELECT TIPO, YEAR(DATA) ,MONTH(DATA), PRECO FROM PRECO_DIARIO GROUP IN TIPO, YEAR(DATA) ,MONTH(DATA)
- D. UPDATE INTO PRECO_MENSAL (TIPO, ANO, MES, PRECO) SELECT TIPO, YEAR(DATA) ,MONTH(DATA), AVG(PRECO) FROM PRECO_DIARIO GROUP BY TIPO, YEAR(DATA) ,MONTH(DATA)
- E. UPDATE TABLE PRECO_MENSAL SET TIPO, ANO, MES, PRECO AS SELECT TIPO, YEAR(DATA) ,MONTH(DATA), AVG(PRECO) FROM PRECO_DIARIO GROUP BY TIPO, YEAR(DATA) ,MONTH(DATA)