Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Operator LIKE określa, czy ciąg znaków pasuje do określonego wzorca. Określony wzorzec może zawierać dokładnie znaki, które mają być zgodne, lub może zawierać znaki meta. W efekcie operator LIKE pasuje do podciągów przy użyciu symboli wieloznacznych w poniższej tabeli.
| Znak | Opis |
|---|---|
| [ ] | Dowolny znak w określonym zakresie ([a-f]) lub ustawiony ([abcdef]). |
| ^ | Dowolny znak inny niż w zakresie ([^a-f]) lub ustawiony ([^abcdef].) |
| % | Dowolny ciąg 0 (zero) lub więcej znaków. Poniższy przykład znajduje wszystkie wystąpienia, w których "Win" znajduje się w dowolnym miejscu w nazwie klasy: SELECT * FROM meta_class WHERE __Class LIKE "%Win%" |
| _ (podkreślenie) | Dowolny znak. Wszelkie podkreślenia literału używane w ciągu zapytania muszą zostać uniknięci przez umieszczenie go wewnątrz [] (nawiasy kwadratowe). |
Na przykład poniższy kod powłoki Power Shell pobiera wszystkie wystąpienia klasy Win32_operatingSystem, której właściwość Name zaczyna się od FirstName:
Get-WmiObject win32_computerSystem -filter "Name LIKE 'FirstName%'"
Ponieważ podkreślenie jest znakiem meta, jeśli element docelowy zapytania ma podkreślenie, znaki ucieczki "[]" muszą go otaczać. Można na przykład wykonać zapytanie dotyczące wszystkich klas, które mają podwójne podkreślenie w nazwie.
Aby zlokalizować wszystkie klasy z podwójnym podkreśleniem w nazwie, należy ująć oba podkreślenia za pomocą znaku [] (nawiasy kwadratowe), na przykład:
SELECT * FROM meta_class WHERE __CLASS LIKE "%[_][_]%"
Instrukcję LIKE można negować przy użyciu instrukcji NOT; w tym celu pamiętaj, aby umieścić nie bezpośrednio przed nazwą pola. Na przykład:
Get-WmiObject -computerName "." -query 'Select * FROM Win32_Printer WHERE Local="TRUE" AND Network ="False" AND DriverName LIKE "%HP%" AND NOT PortName LIKE "%10.%" AND NOT PortName LIKE "%\\%"'
Tematy pokrewne
-
operatory WQL