Paweł Łukasiewicz
2020-09-10
Paweł Łukasiewicz
2020-09-10
Udostępnij Udostępnij Kontakt
SELECT

Instrukcja SELECT jest najprostszą a jednocześnie fundamentalną ponieważ jest podstawą niemal wszystkich innych zapytań. Za najlepszą praktykę uważa się pisanie dużymi literami słów zastrzeżony dla SQL ponieważ czyni to całą instrukcję łatwiejszą do przeczytania i zrozumienia.

Jak sugeruje nazwa, SELECT używany jest do wybierania danych z bazy danych. Oto najprostsze zastosowanie:

SELECT * FROM table;

Zapytanie to składa się z dwóch części. Pierwsza część SELECT * określa kolumny, które chcesz wybrać. Gwiazdka oznacza, że chcesz wybrać wszystkie kolumny z tabeli. Druga część FROM table informuje bazę danych o tabeli z której chcesz pobrać dane. Pamietaj, aby zastąpić table nazwą tabeli z bazy danych.

To polecenie przyjmuje również nazwę SELECT gwiazdka. Używanie gwiazdki jest dobrym sposobem na określenie jakie dane znajdują się w tabeli – nie jest zalecane na produkcji. W przypadku takiego polecenia to silnik bazy danych decyduje w jaki sposób zostaną przedstawione dane. Nie mamy żadnego wpływu na kolejność zwracania danych. Po dodaniu nowej kolumny w bazie danych może się okazać, że zmienne przygotowane po stronie kodu nie są już poprawne. Na szczęście mamy rozwiązanie.

Możemy jawnie określić, które kolumny chcemy pobrać:

SELECT column1, column2, column3,…columnN FROM table
To zapytanie zwróci nam wskazane kolumny ze wskazanej tabeli. Nazwy kolumn oraz nazwa tabeli muszą być zgodne z tymi zdefiniowanymi w bazie danych. Taki sposób wybierania danych może być dla Was nieco żmudny jeżeli mamy dużo danych ale jest to zdecydowanie mniejszy problem na przyszłość a Twój kod będzie dużo czytelniejszy dla innych programistów.

Jeżeli jeszcze nie pobraliście bazy danych AdventureWorks to ostatni moment

W pierwszym przykładzie wykonamy instrukcję SELECT gwiazdka:

SELECT * FROM Production.Product
SQL - Select (Gwiazdka) Możemy zaobserwować szereg kolumn oraz rekordów. Spróbujmy teraz zawęzić poszukiwania ponieważ nie potrzebujemy aż tylu informacji:
SELECT ProductID, Name, ProductNumber FROM Production.Product
Oraz wynik tak zmodyfikowanej instrukcji: SQL Server - wynik operacji select

Możemy zaobserwować, że zmniejszyła nam się liczba kolumn ale wciąż mamy tak samo dużo rekordów. Jak możecie się domyslać - w kolejnym wpisie poruszymy klauzulę WHERE.