Les alias SQL sont utilisés pour donner un nom temporaire à une table ou à une colonne d'une table.
Les alias sont souvent utilisés pour rendre les noms de colonnes plus lisibles.
Un alias existe uniquement pour la durée de la requête en cours.
Un alias est créé à l'aide du mot-clé AS.
SELECT column_name AS alias_name
FROM table_name
SELECT column_name(s)
FROM table_name AS alias_name
Vous trouverez ci-dessous un exemple de la table "Customers" ("Clients") :
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 5021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 5023 | Mexico |
Et l'échantillon de la table "Orders" ("Commandes") :
ProductID | OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|---|
1 | 10248 | 90 | 5 | 1996-07-04 | 3 |
2 | 10249 | 81 | 6 | 1996-07-05 | 1 |
3 | 10250 | 34 | 4 | 1996-07-08 | 2 |
L'instruction SQL suivante crée deux alias, un pour la colonne CustomerID et un pour la colonne CustomerName :
Run SQLSELECT CustomerID AS ID, CustomerName AS Customer
FROM Customers
L'instruction SQL suivante crée deux alias : un pour la colonne CustomerName et un pour la colonne ContactName.
Remarque : Il nécessite des guillemets doubles ou des crochets si l'alias contient des espaces :
Run SQLSELECT CustomerName AS Customer, ContactName AS 'Contact Person'
FROM Customers
L'instruction SQL suivante crée un alias nommé "Address" ("Adresse") qui concatène quatre colonnes (adresse, code postal, ville et pays) :
SELECT CustomerName, Address + ', ' + PostalCode + ' ' + City + ', ' + Country AS Address
FROM Customers
Pour que l'instruction SQL ci-dessus fonctionne dans MySQL, utilisez ce qui suit :
Run SQLSELECT CustomerName, CONCAT(Address,', ',PostalCode,', ',City,', ',Country) AS Address
FROM Customers
Pour que l'instruction SQL ci-dessus fonctionne dans Oracle, utilisez ce qui suit :
SELECT CustomerName, (Address || ', ' || PostalCode || ' ' || City || ', ' || Country) AS Address
FROM Customers
L'instruction SQL suivante sélectionne toutes les commandes du client avec CustomerID = 4 ("Around the Horn"). Nous utilisons les tables "Customers" et "Orders" et leur donnons respectivement les alias de table "c" et "o" (ici nous utilisons des alias pour raccourcir la requête SQL) :
Run SQLSELECT o.OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders AS o
WHERE c.CustomerName = 'Around the Horn' AND c.CustomerID = o.CustomerID
L'instruction SQL suivante est la même que ci-dessus, mais sans les alias :
Run SQLSELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM Customers, Orders
WHERE Customers.CustomerName = 'Around the Horn' AND Customers.CustomerID = Orders.CustomerID
Les alias peuvent être utiles dans les cas suivants :