0% acharam este documento útil (0 voto)
6 visualizações2 páginas

Álgebra Relacional e SQL

A Álgebra Relacional é uma linguagem de consulta processual que utiliza operadores para manipular relações em bancos de dados, enquanto o SQL é uma linguagem declarativa que foca no que se deseja obter. Os comandos SQL incluem SELECT, FROM, WHERE, INSERT, UPDATE e DELETE, e as subconsultas permitem consultas aninhadas para operações complexas. As subconsultas não relacionadas podem ser executadas independentemente e fornecem resultados que podem ser usados na consulta externa.
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
6 visualizações2 páginas

Álgebra Relacional e SQL

A Álgebra Relacional é uma linguagem de consulta processual que utiliza operadores para manipular relações em bancos de dados, enquanto o SQL é uma linguagem declarativa que foca no que se deseja obter. Os comandos SQL incluem SELECT, FROM, WHERE, INSERT, UPDATE e DELETE, e as subconsultas permitem consultas aninhadas para operações complexas. As subconsultas não relacionadas podem ser executadas independentemente e fornecem resultados que podem ser usados na consulta externa.
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Álgebra Relacional

A Álgebra Relacional é uma linguagem de consulta processual. Ela descreve o como obter o
resultado, utilizando um conjunto de operadores que manipulam relações (tabelas) e
produzem novas relações. É a espinha dorsal matemática por trás dos Sistemas de
Gerenciamento de Banco de Dados Relacionais (SGBDRs).

Os principais operadores, essenciais para a manipulação de dados, são:

●​ Seleção ($\sigma$): Filtra as tuplas (linhas) de uma relação que satisfazem uma
condição específica.
●​ Projeção ($\pi$): Seleciona os atributos (colunas) desejados da relação, eliminando
colunas não especificadas.
●​ União ($\cup$): Combina todas as tuplas de duas relações compatíveis (mesmo
número e tipo de atributos).
●​ Diferença ($-$): Retorna as tuplas que estão em uma relação, mas não na segunda.
●​ Produto Cartesiano ($\times$): Combina cada tupla de uma relação com cada tupla
de outra, resultando em todas as combinações possíveis.
●​ Junção ($\bowtie$): Combina tuplas de duas relações com base em uma condição de
igualdade ou outra lógica.

SQL (Structured Query Language)


O SQL, por outro lado, é uma linguagem declarativa. Em vez de especificar como executar a
consulta (como na Álgebra Relacional), ele foca no que se deseja obter do banco de dados.

Os comandos SQL são classificados em diferentes categorias. Destacamos os comandos


básicos de manipulação e consulta de dados (DQL - Data Query Language e DML - Data
Manipulation Language):

●​ SELECT: É o comando principal para recuperar dados.


●​ FROM: Especifica a(s) tabela(s) de origem.
●​ WHERE: Aplica condições para filtrar os registros.
●​ INSERT: Utilizado para adicionar novos dados.
●​ UPDATE: Utilizado para modificar dados existentes.
●​ DELETE: Utilizado para remover dados.

Subconsultas
Uma subconsulta é uma consulta SQL aninhada dentro de outra consulta. Elas são
ferramentas poderosas para construir consultas complexas e realizar operações em etapas.

Subconsulta Não Relacionada (Independente)


A subconsulta não relacionada é aquela que pode ser executada de forma independente da
consulta externa. Ela é executada apenas uma vez, e seu resultado é então fornecido à
consulta externa para ser usado na cláusula WHERE, FROM, ou HAVING.

Características:

●​ Não referencia nenhuma coluna da consulta externa.


●​ O resultado pode ser um valor único (escalar) ou uma lista/conjunto de valores.
Exemplo de uso com valor escalar:​
Se a subconsulta retorna um único valor, podemos usar operadores de comparação como =,
>, <, [Link] nome

FROM Funcionarios

WHERE salario = (

SELECT AVG(salario)

FROM Funcionarios

);

Neste exemplo, o salário médio é calculado primeiro e, em seguida, a consulta externa


encontra os funcionários com esse salário.

Exemplo de uso com lista de valores:​


Quando a subconsulta retorna um conjunto de valores, usamos operadores de conjunto como
IN, NOT IN, ANY, e ALL.

●​ IN: O valor na consulta externa deve corresponder a qualquer valor retornado pela
subconsulta.
●​ ALL: O valor na consulta externa deve ser maior, menor, ou igual a todos os valores
retornados.
●​ ANY: O valor na consulta externa deve ser maior, menor, ou igual a pelo menos um
dos valores retornados.

SELECT nome_projeto

FROM Projetos

WHERE id_projeto IN (

SELECT id_projeto

FROM Funcionarios_Projetos

WHERE id_funcionario = 'F100'

);

Este código SQL recupera os nomes dos projetos nos quais o funcionário 'F100' está
envolvido, sendo o resultado da subconsulta uma lista de IDs de projeto.

Você também pode gostar