LPBD - Comandos Avançados - SQL

Fazer download em pptx, pdf ou txt
Fazer download em pptx, pdf ou txt
Você está na página 1de 13

Comandos Avançados

SQL
Profa MsC Josyane Lannes Florenzano de Souza
Apelido para colunas e tabela (Alias)
a) Definição
• Ao recuperar informações de um banco de dados, a
ferramenta normalmente usa como cabeçalho da coluna o
próprio nome da coluna do comando SELECT.
• Este cabeçalho pode, muitas vezes, ser de difícil
compreensão.
• Considerando tal cenário, é possível definir um cabeçalho
mais indicativo para a coluna através de um apelido.
• Agora quando falamos de apelido de tabela, é comum
utilizá-la quando a tabela possui um nome grande e
necessitamos citá-las várias vezes em uma consulta.
Apelido para colunas e tabela (Alias)
Sintaxe
• SELECT col1 AS nome-do-apelido, col2 AS nome-do-
apelido, . . .
• FROM nome-da-tabela AS nome-do-apelido;
Obs: A palavra “AS” é opcional para alguns SGBDs

Ex1: no exemplo a seguir, a coluna


“codigo_empregado” recebeu o apelido de “Matrícula”
e a coluna “nome” recebeu o apelido de “Nome do
Empregado”.
Apelido para colunas e tabela (Alias)
• Seguindo o mesmo raciocínio, a tabela
empregado recebeu o apelido de emp. Para
tanto, o apelido da coluna nome - “Nome do
Empregado”, necessitou de aspas duplas por
haver espaços em branco em sua composição.
Apelido para colunas e tabela (Alias)
SELECT codigo_empregado AS matricula,
nome AS “Nome do Empregado”
FROM empregado AS emp
WHERE sal BETWEEN 2600 and 5600;
Apelido para colunas e tabela (Alias)
b) Ordenando resultados das consultas
b.1) Definição
A ordem das linhas recuperadas em uma consulta no
banco de dados é indefinida. O SQL permite que o
usuário ordene o resultado de uma consulta, pelos
valores de um ou mais atributos, através do comando
ORDER BY. É possível ordenar o resultado em ordem
crescente(default) - através da cláusula ASC ou em
ordem decrescente – através da cláusula DESC. Deve-se
considerar ainda que esta cláusula seja sempre a última
cláusula do comando SELECT.
Apelido para colunas e tabela (Alias)
b) Ordenando resultados das consultas
b.2) Classificação pelo nome da coluna
Ex: O comando a seguir exibirá o nome de todos
os empregados em ordem alfabética.

SELECT nome FROM empregado


ORDER BY nome;
• Ou
SELECT nome FROM empregado ORDER BY nome ASC;
Apelido para colunas e tabela (Alias)
b) Ordenando resultados das consultas
b.3) Classificação por apelido
Ex: O comando a seguir exibirá o código e o
salário de todos os empregados ordenados
alfabeticamente pelo apelido da coluna
“código_empregado”.

SELECT codigo_empregado AS matricula, salario


FROM empregado
ORDER BY matricula;
Apelido para colunas e tabela (Alias)
b) Ordenando resultados das consultas
b.4) Classificação por várias colunas
Ex: O comando a seguir classifica o relatório nas
colunas uf, cidade, bairro em ordem decrescente
por data de nascimento.

SELECT uf, cidade, bairro, data_nasc FROM


empregado
ORDER BY uf, cidade, bairro, data_nasc DESC;
Apelido para colunas e tabela (Alias)
b) Ordenando resultados das consultas
b.5) Classificação posicional
Ex: O comando abaixo é outra possibilidade de
estabelecer o mesmo resultado do comando anterior.
No entanto, utilizou-se da ordenação posicional por
uma coluna da lista do SELECT. Pode-se notar, deste
modo, que cada coluna seguinte à palavra reservada
SELECT receberá um número seqüencial, que poderá
ser utilizado na cláusula ORDER BY no lugar do nome da
coluna.

SELECT uf, cidade, bairro, data_nasc FROM empregado


ORDER BY 1, 2, 3, 4 DESC;
Apelido para colunas e tabela (Alias)
c) Eliminando linhas em duplicata
c.1) Definição
• Usa-se a cláusula DISTINCT para eliminar
linhas em duplicata redundantes de um
resultado de consulta.
Ex: O comando a seguir exibirá todos os
diferentes valores dos salários contidos na
tabela empregado.

SELECT DISTINCT salário FROM empregado;


Exercícios
Crie a tabela Funcionário
(cod, nome, end, sal) e popule-a

1. Informe código e nome de todos os


empregados ordenados
alfabeticamente. Use o apelido
matrícula para a coluna cod.
Exercícios - Resposta
Crie a tabela empregado
(cod, nome, end, cidade, cargo, sal) e popule-a

1. Informe cod e nome de todos os empregados


ordenados alfabeticamente. Use o apelido
matrícula para a coluna cod.

SELECT cod AS matricula, nome


FROM empregado
ORDER BY matricula;

Você também pode gostar