Filtrar


Questões por página:

Avalie as afirmativas a seguir sobre operações de conjunto (UNION, INTERSECT, EXCEPT), tratamento de valores NULL e duplicação de tuplas em SQL:



I. A operação UNION DISTINCT, embora semanticamente equivalente a UNION, pode ser utilizada para explicitar a remoção de duplicatas entre os resultados de duas consultas. Já UNION ALL preserva todas as tuplas, inclusive duplicadas, com melhor desempenho.


II. A linguagem SQL utiliza lógica de três valores (TRUE, FALSE, UNKNOWN) ao avaliar expressões lógicas, sendo UNKNOWN o resultado típico de comparações com NULL.


III. Em SQL, ao comparar um valor com NULL, deve-se usar o operador de igualdade (=) ou desigualdade (<>), já que NULL é tratado como um valor especial.


IV. Embora o modelo relacional clássico trate relações como conjuntos, o SQL permite tuplas duplicadas tanto em tabelas quanto em resultados de consultas, tratando seus dados como multiconjuntos (bags).



É correto o que se afirma:

Avalie as afirmativas a seguir sobre operadores e cláusulas da linguagem SQL:



I. O operador OUTER JOIN garante que todos os registros da tabela base sejam incluídos no resultado, mesmo que não haja correspondência com a tabela associada, preenchendo com NULL os campos não emparelhados.


II. O operador IN retorna TRUE se ao menos uma das comparações for satisfeita; já o operador ALL retorna TRUE somente se todas as comparações forem verdadeiras.


III. A cláusula WHERE pode ser utilizada para filtrar resultados agregados desde que esteja posicionada após o GROUP BY.


IV. A cláusula HAVING pode ser usada para filtrar grupos de resultados gerados por funções agregadas, enquanto WHERE atua apenas sobre linhas individuais antes do agrupamento.



É correto o que se afirma em: 

Sobre a otimização (tuning) de consultas em bancos de dados relacionais, avalie as afirmações apresentadas a seguir:



I. Consultas com múltiplas condições de seleção conectadas pelo operador lógico OR podem não utilizar índices eficientemente e podem ser otimizadas dividindo-as em uma união (UNION) de consultas separadas.


II. O uso desnecessário da cláusula DISTINCT pode ser evitado sem alterar o resultado em alguns casos, o que é benéfico, pois DISTINCT frequentemente causa uma operação de ordenação onerosa.


III. Consultas aninhadas correlacionadas são sempre mais eficientes do que suas versões não aninhadas ou reescritas como JOINs, pois o SGBD otimiza sua execução avaliando a subconsulta apenas uma vez.


IV. Expressões aritméticas ou comparações envolvendo valores NULL ou substrings em cláusulas WHERE podem, em alguns casos, impedir que o otimizador de consulta utilize índices relevantes.



É correto o que se afirma em:

Subconsultas e aliases são recursos essenciais em SQL, empregados tanto na estruturação de consultas complexas quanto na resolução de dependências entre escopos interno e externo. Com base nisso, analise as afirmações a seguir:



I. Subconsultas podem ser utilizadas nas cláusulas WHERE, HAVING e FROM, sendo geralmente necessário atribuir um alias quando posicionadas em FROM, especialmente para permitir referência a seus campos.


II. O operador EXISTS avalia como verdadeira a condição sempre que a subconsulta retornar ao menos uma tupla, mesmo que composta exclusivamente por valores NULL.


III. O uso de aliases em subconsultas correlacionadas é necessário para garantir a correta referência cruzada entre os escopos interno e externo da consulta.


IV. O operador IN compara um valor escalar com os resultados de uma subconsulta, sendo sensível à presença de NULL, o que pode influenciar o resultado lógico da expressão.



É correto o que se afirma em:

A linguagem SQL é amplamente utilizada para a consulta a dados em bancos relacionais e apresenta paralelos conceituais com a álgebra relacional. Com base na correspondência entre as cláusulas SQL e as operações fundamentais da álgebra relacional, analise as proposições que seguem e assinale a alternativa correta: