Dopasowywanie wzorców w zapytaniach SQL
Używanie symboli wieloznacznych do niedokładnego dopasowania
Dopasowywanie wzorców SQL umożliwia wyszukiwanie wzorców w danych, jeśli nie znasz dokładnego słowa lub frazy, której szukasz. Ten rodzaj SQL zapytanie używa symboli wieloznacznych, aby dopasować wzorzec, zamiast określać go dokładnie. Na przykład możesz użyć symbolu wieloznacznego „C%”, aby dopasować dowolny ciąg rozpoczynający się od dużej litery C.
Kate Ter Haar / Flickr/CC od 2.0
Korzystanie z operatora LIKE
Aby użyć wyrażenia wieloznacznego w zapytaniu SQL, użyj operatora LIKE w klauzuli WHERE i umieść wzorzec w pojedynczym cudzysłowie.
Używanie symbolu wieloznacznego % do wykonania prostego wyszukiwania
Aby wyszukać w bazie danych dowolnego pracownika o nazwisku zaczynającym się na literę C, użyj następującej instrukcji języka Transact-SQL:
|_+_|Pomijanie wzorców za pomocą słowa kluczowego NOT
Użyj słowa kluczowego NOT, aby wybrać rekordy, które nie pasują do wzorca. Na przykład to zapytanie zwraca wszystkie rekordy, których nazwa jest ostatnia nie zacznij od C:
|_+_|
Dopasowywanie wzorca w dowolnym miejscu za pomocą % Wildcard dwa razy
Użyj dwóch wystąpień % symbol wieloznaczny, aby dopasować dowolny wzorzec w dowolnym miejscu. Ten przykład zwraca wszystkie rekordy zawierające literę C w dowolnym miejscu nazwiska:
|_+_|Znajdowanie dopasowania wzoru w określonej pozycji
Użyj _ symbol wieloznaczny, aby zwrócić dane w określonej lokalizacji. Ten przykład pasuje tylko wtedy, gdy C występuje na trzeciej pozycji kolumny z nazwiskiem:
|_+_|Obsługiwane wyrażenia wieloznaczne w Transact SQL
Istnieje kilka wyrażeń symboli wieloznacznych obsługiwanych przez Transact SQL:
- The % symbol wieloznaczny dopasowuje zero lub więcej znaków dowolnego typu i może służyć do definiowania symboli wieloznacznych zarówno przed, jak i po wzorcu. Jeśli jesteś zaznajomiony z dopasowywaniem wzorców DOS, jest to odpowiednik symbolu wieloznacznego * w tej składni.
- The _ symbol wieloznaczny pasuje do dokładnie jednego znaku dowolnego typu. To odpowiednik ? symbol wieloznaczny w dopasowaniu wzorca DOS.
- Określ listę znaków, umieszczając je w nawiasach kwadratowych. Na przykład symbol wieloznaczny [kredyt] pasuje do dowolnej samogłoski.
- Określ zakres znaków, umieszczając go w nawiasach kwadratowych. Na przykład symbol wieloznaczny [jestem] pasuje do dowolnej litery z pierwszej połowy alfabetu.
- Zanegować zakres znaków, umieszczając znak karatowy bezpośrednio w otwierającym nawiasie kwadratowym. Na przykład, [^ai ty] dopasowuje dowolny znak niebędący samogłoską, podczas gdy [^a-m] dopasowuje dowolny znak spoza pierwszej połowy alfabetu.
Łączenie symboli wieloznacznych w celu uzyskania złożonych wzorów
Połącz te symbole wieloznaczne w złożone wzorce, aby wykonywać bardziej zaawansowane zapytania. Załóżmy na przykład, że musisz stworzyć listę wszystkich pracowników, których nazwiska zaczynają się na literę z pierwszej połowy alfabetu, ale nie nie zakończyć samogłoską. Możesz użyć następującego zapytania:
|_+_|
Podobnie, możesz skonstruować listę wszystkich pracowników z nazwiskami składającą się z dokładnie czterech znaków, używając czterech wystąpień _ wzorzec:
|_+_|Jak widać, wykorzystanie możliwości dopasowania wzorców SQL daje użytkownikom bazy danych możliwość wyjścia poza proste zapytania tekstowe i wykonywania zaawansowanych operacji wyszukiwania.