Teradata - Instruction SELECT

L'instruction SELECT est utilisée pour récupérer les enregistrements d'une table.

Syntaxe

Voici la syntaxe de base de l'instruction SELECT.

SELECT 
column 1, column 2, ..... 
FROM  
tablename;

Exemple

Considérez le tableau des employés suivant.

Numéro d'employé Prénom Nom de famille JoinedDate DépartementNon Date de naissance
101 Mike James 27/03/2005 1 05/01/1980
102 Robert Williams 25/04/2007 2 05/03/1983
103 Peter Paul 21/03/2007 2 01/04/1983
104 Alex Stuart 2/1/2008 2 06/11/1984
105 Robert James 1/4/2008 3 01/12/1984

Voici un exemple d'instruction SELECT.

SELECT EmployeeNo,FirstName,LastName 
FROM Employee;

Lorsque cette requête est exécutée, elle extrait les colonnes EmployeeNo, FirstName et LastName de la table Employee.

EmployeeNo            FirstName                       LastName 
-----------  ------------------------------  --------------------------- 
   101                   Mike                            James 
   104                   Alex                            Stuart 
   102                   Robert                          Williams 
   105                   Robert                          James 
   103                   Peter                           Paul

Si vous souhaitez récupérer toutes les colonnes d'une table, vous pouvez utiliser la commande suivante au lieu de lister toutes les colonnes.

SELECT * FROM Employee;

La requête ci-dessus récupérera tous les enregistrements de la table des employés.

Clause WHERE

La clause WHERE est utilisée pour filtrer les enregistrements renvoyés par l'instruction SELECT. Une condition est associée à la clause WHERE. Seuls les enregistrements qui satisfont à la condition de la clause WHERE sont renvoyés.

Syntaxe

Voici la syntaxe de l'instruction SELECT avec la clause WHERE.

SELECT * FROM tablename 
WHERE[condition];

Exemple

La requête suivante récupère les enregistrements où EmployeeNo est 101.

SELECT * FROM Employee 
WHERE EmployeeNo = 101;

Lorsque cette requête est exécutée, elle renvoie les enregistrements suivants.

EmployeeNo          FirstName                      LastName 
----------- ------------------------------ ----------------------------- 
   101                 Mike                           James

COMMANDÉ PAR

Lorsque l'instruction SELECT est exécutée, les lignes renvoyées ne sont pas dans un ordre spécifique. La clause ORDER BY est utilisée pour organiser les enregistrements dans l'ordre croissant / décroissant sur toutes les colonnes.

Syntaxe

Voici la syntaxe de l'instruction SELECT avec la clause ORDER BY.

SELECT * FROM tablename 
ORDER BY column 1, column 2..;

Exemple

La requête suivante récupère les enregistrements de la table des employés et classe les résultats par FirstName.

SELECT * FROM Employee 
ORDER BY FirstName;

Lorsque la requête ci-dessus est exécutée, elle produit la sortie suivante.

EmployeeNo         FirstName                      LastName 
----------- ------------------------------ ----------------------------- 
    104               Alex                           Stuart 
    101               Mike                           James 
    103               Peter                          Paul 
    102               Robert                         Williams 
    105               Robert                         James

PAR GROUPE

La clause GROUP BY est utilisée avec l'instruction SELECT et organise les enregistrements similaires en groupes.

Syntaxe

Voici la syntaxe de l'instruction SELECT avec la clause GROUP BY.

SELECT column 1, column2 …. FROM tablename 
GROUP BY column 1, column 2..;

Exemple

L'exemple suivant regroupe les enregistrements par colonne DepartmentNo et identifie le nombre total de chaque service.

SELECT DepartmentNo,Count(*) FROM   
Employee 
GROUP BY DepartmentNo;

Lorsque la requête ci-dessus est exécutée, elle produit la sortie suivante.

DepartmentNo    Count(*) 
------------  ----------- 
     3             1 
     1             1 
     2             3