Recuperació de dades amb consultes SQL: introduir la instrucció SELECT

El llenguatge de consulta estructurada ofereix als usuaris de la base de dades un mecanisme de recuperació de dades potent i flexible: la instrucció SELECT. En aquest article, veurem el formulari general de la instrucció SELECT i compondrem unes quantes consultes de base de dades d'exemple. Si aquesta és la primera incursió en el món del llenguatge de consulta estructurada, és possible que vulgueu revisar els fonaments SQL de l'article abans de continuar.

Si esteu buscant dissenyar una nova base de dades des de zero, l'article Crear bases de dades i taules en SQL hauria de ser un bon punt de partida.

Ara que ha avançat els aspectes bàsics, anem a començar la nostra exploració de la instrucció SELECT. Igual que amb les lliçons SQL anteriors, seguirem utilitzant instruccions que compleixin amb l'estàndard ANSI SQL. Podeu consultar la documentació del vostre SGBD per determinar si admet opcions avançades que poden millorar l'eficàcia i / o l'eficàcia del vostre codi SQL.

La forma general de la declaració SELECT

A continuació es mostra la forma general de la instrucció SELECT:

SELECCIONA la llista de selecció
DE la font
DONEN condició (s)
Expressió GROUP BY
Tenint condició
ORDRE PER expressió

La primera línia de la declaració indica al processador SQL que aquesta comanda és una instrucció SELECT i que volem recuperar informació d'una base de dades. El select_list ens permet especificar el tipus d'informació que volem recuperar.

La clàusula FROM de la segona línia especifica la taula de la base de dades específica implicada i la clàusula WHERE ens dóna la capacitat de limitar els resultats a aquells registres que compleixen les condicions especificades. Les últimes tres clàusules representen característiques avançades fora de l'àmbit d'aquest article: les explorarem en futurs articles SQL.

La forma més senzilla d'aprendre SQL és per exemple. Amb això en ment, començarem a examinar algunes consultes de base de dades. Al llarg d'aquest article, utilitzarem la taula de treballadors de la base de dades de recursos humans de XYZ Corporation per il·lustrar totes les nostres consultes. Aquí teniu tota la taula:

EmployeeID

Cognom

Nom

Sou

ReportsTo

1

Smith

John

32000

2

2

Scampi

Sue

45000

NUL

3

Kendall

Tom

29500

2

4 Jones Abraham 35000 2
5 Allen Bill 17250 4
6 Reynolds Allison 19500 4
7 Johnson Katie 21000 3

Recuperant una taula sencera

El Director de Recursos Humans de XYZ Corporation rep un informe mensual que proporciona informació de salaris i informes per a cada empleat de la companyia. La generació d'aquest informe és un exemple de la forma més simple de la declaració SELECT. Simplement recupera tota la informació continguda en una taula de base de dades: cada columna i cada fila. A continuació s'explica la consulta que realitzarà aquest resultat:

SELECCIONEU *
FROM employees

Bastant senzill, oi? L'asterisc (*) que apareix a la llista de selecció és un comodí que s'utilitza per informar a la base de dades que volem recuperar informació de totes les columnes de la taula de l'empleat identificades a la clàusula FROM. Volíem recuperar tota la informació de la base de dades, de manera que no era necessari utilitzar una clàusula WHERE per restringir les files seleccionades de la taula.

A continuació s'expliquen els resultats de la consulta:

EmployeeID Cognom Nom Sou ReportsTo
---------- -------- --------- ------ ---------
1 Smith John 32000 2
2 Scampi Sue 45000 NUL
3 Kendall Tom 29500 2
4 Jones Abraham 35000 2
5 Allen Bill 17250 4
6 Reynolds Allison 19500 4
7 Johnson Katie 21000 3