Dewalt DWMT70782 to wysokiej jakości narzędzie przeznaczone do wykonywania podstawowych operacji. Posiada on trzy wymienne końcówki wyposażone w uchwyt do pracy z blachy, szczotki i wałków, które pomagają w precyzyjnym wykonaniu pracy. Jego wyjątkowy projekt zapewnia trwałość i wygodę użytkowania. Przeznaczony jest do użytku domowego lub profesjonalnego, a dzięki swojej mocy może wykonywać nawet najcięższe prace. Dewalt DWMT70782 to jeden z najlepszych wyborów do podstawowych operacji.
Ostatnia aktualizacja: Podstawowe operacje Dewalt Dwmt70782
Ta przeglądarka nie jest już obsługiwana.
Przejdź na przeglądarkę Microsoft Edge, aby korzystać z najnowszych funkcji, aktualizacji zabezpieczeń i pomocy technicznej.
- Artykuł
- Czas czytania: 6 min
Ten temat zawiera krótkie wprowadzenie do wyrażeń Language-Integrated Query (LINQ) w języku Visual Basic oraz niektórych typowych rodzajów operacji wykonywanych w zapytaniu. Aby uzyskać więcej informacji, zobacz następujące tematy:
Wprowadzenie do LINQ w Visual Basic
Zapytania
Wskazówki: Pisanie zapytań w Visual Basic
Określanie źródła danych (z)
W zapytaniu LINQ pierwszym krokiem jest określenie źródła danych, którego chcesz wykonać zapytanie. W związku z tym klauzula From
w zapytaniu zawsze pojawia się jako pierwsza. Operatory zapytań wybierają i kształtą wynik na podstawie typu źródła.
Dim query = From cust In customers'...
Klauzula From
określa źródło danych, customers
i zmiennącust
zakresu. Zmienna zakresu jest jak zmienna iteracji pętli, z tą różnicą, że w wyrażeniu zapytania nie ma rzeczywistej iteracji. Gdy zapytanie jest wykonywane, często przy użyciu For Each
pętli, zmienna zakresu służy jako odwołanie do każdego kolejnego elementu w customers
elemencie. Ponieważ kompilator może wywnioskować typ cust
, nie trzeba jawnie go określać. Przykłady zapytań napisanych za pomocą jawnego wpisywania i bez ich pisania można znaleźć w temacie Relacje typów w operacjach zapytań (Visual Basic).
Aby uzyskać więcej informacji na temat używania klauzuli From
w Visual Basic, zobacz From Clause (Klauzula from).
Filtrowanie danych (gdzie)
Prawdopodobnie najczęstszą operacją zapytania jest zastosowanie filtru w postaci wyrażenia logicznego. Następnie zapytanie zwraca tylko te elementy, dla których wyrażenie jest prawdziwe. Klauzula Where
jest używana do filtrowania. Filtr określa, które elementy w źródle danych mają być uwzględnione w wynikowej sekwencji. W poniższym przykładzie uwzględniono tylko tych klientów, którzy mają adres w Londynie.
Dim londonCusts = From cust In customersWhere cust. City = "London"Operatory logiczne, takie jak And
i Or
, umożliwiają łączenie wyrażeń filtrów w klauzuli Where
. Aby na przykład zwrócić tylko tych klientów, którzy pochodzą z Londynu i których nazwa to Devon, użyj następującego kodu:
Where cust. City = "London" And cust. Name = "Devon"Aby zwrócić klientów z Londynu lub Paryża, użyj następującego kodu:
Where cust. City = "London" Or cust. City = "Paris"Aby uzyskać więcej informacji na temat używania klauzuli Where
w Visual Basic, zobacz Where, klauzula Where.
Szeregowanie danych (porządkuj wg)
Często wygodne jest sortowanie zwróconych danych w określonej kolejności. Klauzula Order By
spowoduje, że elementy w zwróconej sekwencji zostaną posortowane w określonym polu lub polach. Na przykład następujące zapytanie sortuje wyniki na Name
podstawie właściwości. Ponieważ Name
jest ciągiem, zwracane dane zostaną posortowane alfabetycznie z zakresu od A do Z.
Dim londonCusts1 = From cust In customersOrder By cust. Name AscendingAby uporządkować wyniki w odwrotnej kolejności, z Z do A, użyj klauzuli Order By... Descending
. Wartość domyślna to Ascending
, gdy ani Ascending
nie jest określona, ani Descending
nie jest określona.
Aby uzyskać więcej informacji na temat używania klauzuli Order By
w Visual Basic, zobacz Klauzula Order By.
Wybieranie danych (wybór)
Klauzula Select
określa formę i zawartość zwracanych elementów. Można na przykład określić, czy wyniki będą składać się z kompletnych Customer
obiektów, tylko jednej Customer
właściwości, podzestawu właściwości, kombinacji właściwości z różnych źródeł danych, czy też nowego typu wyników na podstawie obliczeń. Gdy klauzula Select
tworzy coś innego niż kopia elementu źródłowego, operacja jest nazywana projekcją.
Aby pobrać kolekcję składającą się z kompletnych Customer
obiektów, wybierz samą zmienną zakresu:
Dim londonCusts2 = From cust In customersSelect custCustomer
Jeśli wystąpienie jest dużym obiektem, który zawiera wiele pól, a wszystko, co chcesz pobrać, to nazwa, możesz wybrać wartość cust. Name
, jak pokazano w poniższym przykładzie. Wnioskowanie typu lokalnego rozpoznaje, że zmienia typ wyniku z kolekcji obiektów na kolekcję Customer
ciągów.
Dim londonCusts3 = From cust In customersSelect cust. NameAby wybrać wiele pól ze źródła danych, możesz wybrać dwie opcje:
W klauzuli Select
określ pola, które chcesz uwzględnić w wyniku. Kompilator zdefiniuje typ anonimowy zawierający te pola jako jego właściwości. Aby uzyskać więcej informacji, zobacz Typy anonimowe.
Ponieważ zwrócone elementy w poniższym przykładzie są wystąpieniami typu anonimowego, nie można odwoływać się do typu według nazwy w innym miejscu w kodzie. Nazwa wyznaczona przez kompilator dla typu zawiera znaki, które nie są prawidłowe w normalnym kodzie Visual Basic. W poniższym przykładzie elementy w kolekcji zwracane przez zapytanie są londonCusts4
wystąpieniami typu anonimowego
Dim londonCusts4 = From cust In customersSelect Name = cust. Name, Phone = cust. PhoneFor Each londonCust In londonCusts4Console. WriteLine(londonCust. Name & " " & londonCust. Phone)Next-lub-
Zdefiniuj nazwany typ zawierający określone pola, które mają zostać uwzględnione w wyniku, oraz utwórz i zainicjuj wystąpienia typu w klauzuli Select
. Użyj tej opcji tylko wtedy, gdy musisz użyć pojedynczych wyników poza kolekcją, w której są zwracane, lub jeśli musisz przekazać je jako parametry w wywołaniach metody. londonCusts5
Typ w poniższym przykładzie to IEnumerable(Of NamePhone).
Public Class NamePhonePublic Name As StringPublic Phone As String' Additional class elementsEnd Class
Dim londonCusts5 = From cust In customersSelect New NamePhone With {. Name = cust. Name,. Phone = cust. Phone}
Aby uzyskać więcej informacji na temat używania klauzuli Select
w Visual Basic, zobacz Select Clause (Wybieranie klauzuli).
Przyłączanie danych (łączenie i łączenie grupy)
W klauzuli From
można połączyć więcej niż jedno źródło danych na kilka sposobów. Na przykład poniższy kod używa dwóch źródeł danych i niejawnie łączy właściwości z obu tych źródeł w wyniku. Zapytanie wybiera uczniów, których nazwiska zaczynają się od vowel.
Dim vowels() As String = {"A", "E", "I", "O", "U"}Dim vowelNames = From student In students, vowel In vowelsWhere student. Last. IndexOf(vowel) = 0Select Name = student. First & " " &student. Last, Initial = vowelOrder By InitialFor Each vName In vowelNamesConsole. WriteLine(vName. Initial & ": " & vName. Name)Słowo Join
kluczowe jest równoważne w języku INNER JOIN
SQL. Łączy dwie kolekcje na podstawie pasujących wartości klucza między elementami w dwóch kolekcjach. Zapytanie zwraca wszystkie lub część elementów kolekcji, które mają pasujące wartości klucza. Na przykład poniższy kod duplikuje akcję poprzedniego niejawnego sprzężenia.
Dim vowelNames2 = From student In studentsJoin vowel In vowelsOn student. Last(0) Equals vowelGroup Join
łączy kolekcje w jedną hierarchiczną kolekcję, podobnie jak LEFT JOIN
w języku SQL. com/pl-pl/dotnet/visual-basic/language-reference/queries/join-clause" data-linktype="relative-path">Join Clause and Group Join Clause (Klauzula dołączenia do grupy i klauzula dołączania do grupy).
Grupowanie danych (grupuj według)
Klauzulę Group By
można dodać, aby zgrupować elementy w wyniku zapytania zgodnie z co najmniej jednym polem elementów. Na przykład następujące kody grupuje uczniów według roku zajęć.
Dim studentsByYear = From student In studentsSelect studentGroup By year = student. YearInto Classes = GroupFor Each yearGroup In studentsByYearConsole. WriteLine(vbCrLf & "Year: " & yearGroup. year)For Each student In yearGroup. ClassesConsole. WriteLine(" " & student. Last & ", " & student. First)Jeśli uruchomisz ten kod przy użyciu listy uczniów utworzonych w temacie Jak utworzyć listę elementów, dane wyjściowe instrukcji For Each
to:
Rok: Junior
Tucker, Michael
Garcia, Hugo
Garcia, Debra
Tucker, Lance
Rok: Starszy
Omelchenko, Svetlana
Osada, Michiko
Fakhouri, Fadi
Feng, Hanying
Adams, Terry
Rok: Freshman
Mortensen, Sven
Garcia, Cesar
Odmiana pokazana w poniższym kodzie porządkuje lata zajęć, a następnie porządkuje uczniów w ciągu każdego roku według nazwiska.
Dim studentsByYear2 = From student In studentsOrder By student. Year, student. LastAby uzyskać więcej informacji na temat Group By
programu, zobacz Klauzula Grupuj według.
Zobacz też
- IEnumerable<T>
- Wprowadzenie do programu LINQ w Visual Basic
- Zapytania
- Omówienie standardowych operatorów zapytań (Visual Basic)
- LINQ