Souhrn: v tomto kurzu se naučíte používat MySQL SELECT INTO variable
k ukládání výsledků dotazů do proměnných.
Syntaxe MySQL SELECT INTO Variable
Pro uložení výsledku dotazu do jedné nebo více proměnných použijete syntaxi SELECT INTO variable
:
Code language: SQL (Structured Query Language) (sql)
V této syntaxi:
- c1, c2 a c3 jsou sloupce nebo výrazy, které chcete vybrat a uložit do proměnných.
- @v1, @v2 a @v3 jsou proměnné, do kterých se ukládají hodnoty z c1, c2 a c3.
Počet proměnných musí být stejný jako počet sloupců nebo výrazů v seznamu pro výběr. Kromě toho musí dotaz vrátit nula nebo jeden řádek.
Pokud dotaz nevrátí žádný řádek, MySQL vydá varování o absenci dat a hodnoty proměnných zůstanou nezměněny.
V případě, že dotaz vrátí více řádků, MySQL vydá chybu. Abyste zajistili, že dotaz vrátí vždy maximálně jeden řádek, použijete klauzuli LIMIT 1
, která omezí množinu výsledků na jeden řádek.
Příklady MySQL SELECT INTO Proměnná
Pro ukázku použijeme tabulku customers
v ukázkové databázi.
MySQL SELECT INTO příklad jedné proměnné
Následující příkaz získá město zákazníka s číslem 103 a uloží ho do proměnné @city:
Code language: SQL (Structured Query Language) (sql)
Následující příkaz zobrazí obsah proměnné @city:
Code language: SQL (Structured Query Language) (sql)
MySQL SELECT INTO multiple variables example
Chcete-li uložit hodnoty ze seznamu select do více proměnných, oddělujete proměnné čárkami. Například následující příkaz zjistí město a zemi zákazníka číslo 103 a uloží údaje do dvou odpovídajících proměnných @city a @country:
Code language: SQL (Structured Query Language) (sql)
Následující příkaz zobrazuje obsah proměnných @city a @country:
Code language: SQL (Structured Query Language) (sql)
MySQL SELECT INTO proměnná – příklad více řádků
Následující příkaz způsobí chybu, protože dotaz vrátí více řádků:
Code language: SQL (Structured Query Language) (sql)
Tady je výstup:
Code language: SQL (Structured Query Language) (sql)
Pro opravu použijete klauzuli LIMIT 1
takto:
Code language: SQL (Structured Query Language) (sql)
V tomto návodu jste se naučili používat syntaxi MySQL SELECT INTO variable
pro uložení výsledku dotazu do jedné nebo více proměnných.
- Pomohl vám tento návod?
- AnoNení