|
<< Introdução SQL | Inner Join e Outer Join >>
|
referências >
sql > select |
|
|
. : : . select . : : .
|
A declaração Select
consulta dados/registos de uma base de dados. Para consultares os
dados/registos tens de especificar a lista de campos, a lista de tabelas, um
campo da lista de campos para servir de ordenação, e o modo de ordenação
(crescente/decrescente).
As partes de uma declaração SQL são chamadas cláusulas. Uma declaração
básica Select, tem até quatro cláusulas. Por exemplo:
|
SELECT (campo1, campo2, ...)
FROM (tabela1, tabela2, ...)
WHERE (condicao1, condicao2, ...)
ORDER BY (campo1 [ASC|DESC] [, campo2 [ASC|DESC]] ...) |
As cláusulas Where
e Order By são opcionais. Se omitires a cláusula Where, a query
retorna todas as colunas das tabelas especificadas. Se omitires a cláusula
Order By, o SQL mostra as linhas pela ordem em que estão armazenadas na base
de dados. Por defeito, quando consultas dados/registos de múltiplas tabelas,
o SQL usa a ordenação de linhas de acordo com o primeiro campo especificado.
A um nível mais básico podes obter toda a informação de uma tabela usando um
asterisco (*) como um atalho para especificar todos os campos.
É claro que não tens de seleccionar todos os campos, podes especificar os
campos exactos que queres e a ordem pela qual são mostrados.
Os programadores que
passam de bases de dados baseadas em ficheiros para bases de dados
relacionais cometem, frequentemente, o erro de pensarem que uma simples
declaração Select é tudo o que precisam. Eles estão habituados a percorrer
(passar sequencialmente de campo para campo) por um conjunto de registos
para encontrar a informação de que precisam. Essa é uma maneira
absolutamente errada de abordagem às bases de dados relacionais.
Não procures tu pelos dados/registos, deixa a base de dados fazer o
trabalho. É aqui que entra a cláusula Where, que limita os
dados/registos retornados para aqueles que precisas exactamente.
A cláusula Order By
da declaração Select controla a ordem dos dados/registos retornados pela
query.
Os campos na cláusula
Order By não têm de aparecer na lista seleccionada. A modo de ordenação por
defeito é ascendente (ASC), mas podes mostrar os campos pela ordem
contrária, especificando a palavra DESC depois nome do campo
apropriado. Não tens que seleccionar todos os campos, e podes mostrá-los
pela ordem que quiseres.
A seguinte declaração
Select inclui todas as cláusulas básicas:
|
SELECT AlunoID, UltimoNome, PrimeiroNome
FROM Aluno
ORDER BY Ano DESC |
<< Introdução SQL | Inner Join e Outer Join >>
|