Shrnutí: v tomto tutoriálu, se dozvíte, jak používat MySQL alias zlepšit čitelnost dotazy.
MySQL podporuje dva druhy aliasů, které jsou známé jako alias sloupců a alias tabulky.
MySQL alias pro sloupce
někdy jsou názvy sloupců tak technické, že je velmi obtížné pochopit výstup dotazu. Chcete-li dát sloupci popisný název, můžete použít alias sloupce.
následující příkaz ukazuje, jak používat alias sloupce:
Code language: SQL (Structured Query Language) (sql)
pro přiřazení aliasu sloupci použijte klíčové slovo AS
následované aliasem. Pokud alias obsahuje mezery, musíte citovat jako následující:
Code language: SQL (Structured Query Language) (sql)
Protože AS
klíčové slovo je volitelné, můžete vynechat v prohlášení. Všimněte si, že výrazu můžete také dát alias.
podívejme se na tabulku employees
v ukázkové databázi.
následující dotaz vybere křestní jména a příjmení zaměstnanců. Používá funkci CONCAT_WS()
k zřetězení křestního jména a příjmení na celé jméno.
Code language: SQL (Structured Query Language) (sql)
Vyzkoušejte to
záhlaví sloupce je poměrně obtížně čitelné. K vyřešení tohoto, můžete přiřadit záhlaví sloupce výstupního sloupec alias, jak je znázorněno v následující dotaz:
Code language: SQL (Structured Query Language) (sql)
Zkuste si To
V MySQL, můžete použít sloupec alias v ORDER BY
, GROUP BY
a HAVING
doložky se odkazovat na sloupec.
následující dotaz používá alias sloupce v klauzuli ORDER BY
k seřazení celých jmen zaměstnance abecedně:
Code language: SQL (Structured Query Language) (sql)
následující prohlášení vybere příkazy, jejichž celková částka je vyšší než 60000. Používá aliasy sloupců v klauzulích GROUP BY
a HAVING
.
Code language: SQL (Structured Query Language) (sql)
Všimněte si, že nelze použít sloupec alias v WHERE
klauzule. Důvodem je, že když MySQL vyhodnotí klauzuli WHERE
, hodnoty sloupců specifikovaných v klauzuli SELECT
ještě nejsou vyhodnoceny.
MySQL alias pro tabulky
alias můžete použít k zadání jiného názvu tabulky. Tabulce přiřadíte alias pomocí klíčového slova AS
jako následující syntaxi:
Code language: SQL (Structured Query Language) (sql)
alias pro tabulku se nazývá alias tabulky. Stejně jako alias sloupce je klíčové slovo AS
volitelné, takže jej můžete vynechat.
Tento dotaz ukazuje, jak přiřadit employees
tabulka aliasy jako e:
Code language: SQL (Structured Query Language) (sql)
Jakmile je tabulka je přiřazen alias, můžete odkazovat na sloupce tabulky pomocí následující syntaxe:
Code language: SQL (Structured Query Language) (sql)
například:
Code language: SQL (Structured Query Language) (sql)
aliasy tabulky se často používají v příkazu, který obsahuje INNER JOIN
, LEFT JOIN
, RIGHT JOIN
klauzule a poddotazy.
Pojďme se podívat na customers
a orders
stoly:
Obě tabulky mají stejný sloupec jméno:customerNumber
.Bez použití tabulky alias kvalifikovat customerNumber
sloupci, dostanete chybovou zprávu, jako:
Code language: SQL (Structured Query Language) (sql)
Aby se této chybě vyhnout, použijte tabulku alias kvalifikovat customerNumber
sloupec:
Code language: SQL (Structured Query Language) (sql)
výše uvedený dotaz vybere jméno zákazníka a číslo objednávky z customers
a orders
tabulky. Používá c
jako alias tabulky pro tabulku customers
a o
jako alias tabulky pro tabulku orders
. Sloupce v tabulkách customers
a orders
jsou označovány pomocí aliasů tabulky.
pokud nepoužíváte alias ve výše uvedeném dotazu, musíte použít název tabulky pro odkaz na její sloupce, což činí dotaz zdlouhavým a méně čitelným jako následující:
Code language: SQL (Structured Query Language) (sql)
vyzkoušejte si to
v tomto tutoriálu jste se naučili používat MySQL aliasy včetně aliasů sloupců a tabulek.
- byl tento návod užitečný?
- YesNo