Podsumowanie: W tym poradniku dowiesz się jak używać MySQL SELECT INTO variable
do przechowywania wyniku zapytania w zmiennych.
Składnia MySQL SELECT INTO Variable
Aby zapisać wynik zapytania w jednej lub więcej zmiennych, używamy składni SELECT INTO variable
:
Code language: SQL (Structured Query Language) (sql)
W tej składni:
- c1, c2, oraz c3 są kolumnami lub wyrażeniami, które chcemy wybrać i zapisać w zmiennych.
- @v1, @v2, i @v3 są zmiennymi, które przechowują wartości z c1, c2 i c3.
Liczba zmiennych musi być taka sama jak liczba kolumn lub wyrażeń na liście wyboru. Ponadto zapytanie musi zwracać zero lub jeden wiersz.
Jeżeli zapytanie nie zwraca żadnych wierszy, MySQL wydaje ostrzeżenie o braku danych, a wartości zmiennych pozostają niezmienione.
W przypadku, gdy zapytanie zwraca wiele wierszy, MySQL wydaje błąd. Aby upewnić się, że zapytanie zawsze zwraca maksymalnie jeden wiersz, używamy klauzuli LIMIT 1
w celu ograniczenia zbioru wyników do pojedynczego wiersza.
Przykłady MySQL SELECT INTO Zmienna
Do demonstracji użyjemy tabeli customers
w przykładowej bazie danych.
MySQL SELECT INTO pojedyncza zmienna przykłady
Poniższa instrukcja pobiera miasto klienta o numerze 103 i zapisuje je w zmiennej @miasto:
Code language: SQL (Structured Query Language) (sql)
Następujące wyrażenie wyświetla zawartość zmiennej @city:
Code language: SQL (Structured Query Language) (sql)
MySQL SELECT INTO wiele zmiennych przykład
Aby zapisać wartości z listy select do wielu zmiennych, oddzielamy zmienne przecinkami. Na przykład, poniższe wyrażenie znajduje miasto i kraj klienta o numerze 103 i przechowuje dane w dwóch odpowiadających im zmiennych @city i @country:
Code language: SQL (Structured Query Language) (sql)
Następujące wyrażenie pokazuje zawartość zmiennych @city i @country:
Code language: SQL (Structured Query Language) (sql)
MySQL SELECT INTO zmienna – przykład wielu wierszy
Następująca instrukcja powoduje błąd, ponieważ zapytanie zwraca wiele wierszy:
Code language: SQL (Structured Query Language) (sql)
Oto dane wyjściowe:
Code language: SQL (Structured Query Language) (sql)
Aby to naprawić, należy użyć klauzuli LIMIT 1
w następujący sposób:
Code language: SQL (Structured Query Language) (sql)
W tym samouczku dowiedziałeś się, jak używać składni MySQL SELECT INTO variable
do przechowywania wyniku zapytania w jednej lub wielu zmiennych.
- Czy ten tutorial był pomocny?
- TakNie
.