AS (alias) în MySQL

Citirea datelor Toate versiunile MySQL și MariaDB

Dă un nume nou (alias) unei coloane sau unui tabel în rezultatul interogării.

Sintaxă
SELECT expresie AS nume_nou FROM tabel AS t;

Ce face AS (alias)

AS redenumește o coloană în rezultat, fără să schimbe tabelul. Este util mai ales pentru coloanele calculate, care altfel ar avea ca nume toată expresia.

Și tabelele pot primi alias-uri scurte, de exemplu produse AS p. În interogările cu JOIN, alias-urile fac codul mult mai ușor de citit. Cuvântul AS este opțional, dar îl recomandăm pentru claritate.

Un alias cu spații sau diacritice se scrie între backtick-uri: AS `Valoare stoc`.

Exemple

Exemplele de pe această pagină pornesc de la datele de mai jos. Rulează mai întâi acest cod, apoi exemplul.

CREATE TABLE produse (
  id INT PRIMARY KEY,
  nume VARCHAR(50) NOT NULL,
  categorie VARCHAR(30),
  pret INT,
  stoc INT
);

INSERT INTO produse VALUES
  (1, 'Laptop', 'Electronice', 3500, 4),
  (2, 'Mouse', 'Electronice', 80, 25),
  (3, 'Birou', 'Mobilier', 900, 0),
  (4, 'Scaun', 'Mobilier', 650, 7),
  (5, 'Monitor', 'Electronice', 1200, 3);

Exemplul 1: Nume clare pentru coloane calculate

SELECT nume AS produs, pret * stoc AS valoare_stoc
FROM produse
ORDER BY valoare_stoc DESC;

Rezultat

+---------+--------------+
| produs  | valoare_stoc |
+---------+--------------+
| Laptop  |        14000 |
| Scaun   |         4550 |
| Monitor |         3600 |
| Mouse   |         2000 |
| Birou   |            0 |
+---------+--------------+

Exemplul 2: Alias pentru tabel și alias cu spații

SELECT p.nume, p.pret AS `Preț (lei)`
FROM produse AS p
WHERE p.categorie = 'Mobilier';

Rezultat

+-------+-------------+
| nume  | Preț (lei)  |
+-------+-------------+
| Birou |         900 |
| Scaun |         650 |
+-------+-------------+

Greșeli frecvente

  • Folosești aliasul unei coloane în WHERE: WHERE valoare_stoc > 1000 dă eroarea Unknown column. Repetă expresia sau folosește HAVING.
  • Pui aliasul cu spații între apostrofuri. Merge în SELECT, dar în ORDER BY este citit ca text simplu și rândurile nu sunt ordonate. Folosește backtick-uri.

Comenzi înrudite

  • SELECT: Citește date dintr-un tabel. Este comanda SQL folosită cel mai des.
  • INNER JOIN: Combină rândurile din două tabele care au o valoare comună, de exemplu comenzile cu clienții lor.
  • ORDER BY: Ordonează rezultatele crescător (ASC) sau descrescător (DESC) după una sau mai multe coloane.