Język Access SQL: klauzula SELECT

Dotyczy
Access dla Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Ten artykuł jest częścią zestawu dotyczącego języka Access SQL. Wyjaśniono w nim, jak napisać klauzulę SELECT i przedstawiono przykłady technik, których można użyć.

Aby zapoznać się z omówieniem języka Access SQL, zobacz artykuł Język Access SQL: podstawowe pojęcia, słownictwo i składnia.

W tym artykule

Wybieranie pól: klauzula SELECT

Instrukcja SELECT zwykle zaczyna się od klauzuli SELECT . Klauzula służy do określania pól zawierających dane, które mają być zawarte w zapytaniu. Możesz również używać wyrażeń zamiast pól lub oprócz nich. Możesz nawet użyć innej SELECT instrukcji jako pola. Jest to nazywane podzapytaniem.

Załóżmy, że chcesz poznać numery telefonów klientów. Jeśli pole przechowujące te numery nosi nazwę txtCustomerPhone, klauzula SELECT wygląda następująco:

SELECT [txtCustomerPhone]

Nazwę można ująć w nawiasy kwadratowe. Jeśli nazwa nie zawiera spacji ani znaków specjalnych, nawiasy są opcjonalne. Jeśli tak, musisz ich użyć.

Porada

Nazwa zawierająca spacje jest łatwiejsza do odczytania i pozwala zaoszczędzić czas podczas projektowania formularzy i raportów, ale może spowodować, że będziesz wpisywać więcej podczas pisania instrukcji SQL. Należy wziąć pod uwagę ten fakt podczas nazywania obiektów w bazie danych programu Access.

Jeśli instrukcja SQL zawiera co najmniej dwa pola o tej samej nazwie, dodaj nazwę źródła danych każdego pola w klauzuli SELECT . Użyj tej samej nazwy źródła danych, która jest używana w klauzuli FROM .

Wybieranie wszystkich pól

Jeśli chcesz uwzględnić wszystkie pola ze źródła danych, możesz wyświetlić je pojedynczo w klauzuli SELECT lub użyć symbolu wieloznacznego gwiazdki (*). Podczas używania gwiazdki program Access określa pola, które źródło danych zawiera po uruchomieniu zapytania, i uwzględnia je wszystkie. Dzięki temu zapytanie będzie aktualne po dodaniu nowych pól do źródła danych.

Gwiazdki można używać z jednym lub większą ilością źródeł danych w instrukcji SQL. Jeśli używasz gwiazdki z wieloma źródłami danych, dołącz nazwę źródła danych do gwiazdki, aby program Access mógł określić, którego źródła użyć.

Załóżmy na przykład, że chcesz zaznaczyć wszystkie pola z Orders tabeli, ale tylko adres e-mail z Contacts tabeli. Klauzula SELECT może wyglądać następująco:

SELECT Orders.*, Contacts.[E-mail Address]

Uwaga

Pamiętaj, gdzie została użyta gwiazdka. Jeśli ktoś później doda nowe pola do źródła danych, a ty ich nie planujesz, wyniki zapytania mogą nie być odpowiednie.

Wybieranie unikatowych wartości

Jeśli wiesz, że instrukcja zwróci zduplikowane dane i chcesz wyświetlić tylko unikatowe wartości, użyj słowa kluczowego DISTINCT w klauzuli SELECT . Jeśli na przykład niektóre zainteresowania klientów używają tego samego numeru telefonu, upewnij się, DISTINCT że każdy numer telefonu jest widoczny tylko raz:

SELECT DISTINCT [txtCustomerPhone]

Stosowanie nazw zastępczych dla pól lub wyrażeń: słowo kluczowe AS

Etykietę wyświetlaną dla dowolnego pola w widoku arkusza danych można zmienić, używając słowa kluczowego AS i aliasu pola w klauzuli SELECT . Alias pola to nazwa przypisywana do pola w zapytaniu, aby ułatwić odczytywanie wyników. Jeśli na przykład chcesz wybrać dane z pola o nazwie txtCustPhone, możesz ułatwić odczytywanie wyników za pomocą aliasu pola:

SELECT [txtCustPhone] AS [Customer Phone]

Uwaga

Aliasu pola należy używać podczas używania wyrażenia w klauzuli SELECT .

Wybieranie przy użyciu wyrażenia

Czasami trzeba przeglądać obliczenia na podstawie danych lub zwracać tylko część wartości pola. Załóżmy na przykład, że chcesz zwrócić rok urodzenia klientów na podstawie danych w BirthDate polu. Klauzula SELECT może wyglądać następująco:

SELECT DatePart("yyyy",[BirthDate]) AS [Birth Year]

W tym wyrażeniu użyto funkcji DatePart i dwóch argumentów: "yyyy" (stała) i [BirthDate] (identyfikator).

Dowolne prawidłowe wyrażenie może być używane jako pole, jeśli zwraca pojedynczą wartość pojedynczej wartości wejściowej.

Powrót do początku