SQL – operatory wieloznaczne

reklamy

omówiliśmy już o operatorze SQL LIKE, który służy do porównywania wartości z podobnymi wartościami za pomocą symbolu wieloznacznego operatorów.

SQL obsługuje dwa operatory wieloznaczne w połączeniu z operatorem LIKE, które są szczegółowo wyjaśnione w poniższej tabeli.

Sr.No. wieloznaczna& opis
1

znak procentowy (%)

pasuje do jednego lub więcej znaków.

Uwaga − MS Access używa znaku gwiazdki (*) zamiast znaku procentu ( % ).

2

podkreślenie (_)

pasuje do jednego znaku.

Uwaga-MS Access używa znaku zapytania (?) zamiast podkreślnika ( _ ), aby dopasować dowolny znak.

znak procentowy reprezentuje zero, jeden lub wiele znaków. Podkreślenie reprezentuje pojedynczą liczbę lub znak. Symbole te mogą być używane w kombinacjach.

składnia

podstawowa składnia operatora '%’ i '_’ jest następująca.

SELECT * FROM table_nameWHERE column LIKE 'XXXX%'or SELECT * FROM table_nameWHERE column LIKE '%XXXX%'orSELECT * FROM table_nameWHERE column LIKE 'XXXX_'orSELECT * FROM table_nameWHERE column LIKE '_XXXX'orSELECT * FROM table_nameWHERE column LIKE '_XXXX_'

Możesz połączyć N liczbę warunków za pomocą operatorów AND lub OR. Tutaj XXXX może być dowolną wartością liczbową lub łańcuchową.

przykład

poniższa tabela zawiera kilka przykładów pokazujących, gdzie część ma różne podobne klauzule z operatorami '%’ i’_’.

Sr.No. oświadczenie& opis
1

gdzie '200%’

znajduje dowolne wartości zaczynające się od 200.

2

gdzie '%200%’

znajduje dowolne wartości, które mają 200 W dowolnej pozycji.

3

gdzie '_00%’

znajduje dowolne wartości, które mają 00 w drugiej i trzeciej pozycji.

4

gdzie '2_%_%’

znajduje dowolne wartości zaczynające się od 2 i mające co najmniej 3 znaki długości.

5

gdzie '%2′

znajduje dowolne wartości, które kończą się na 2.

6

gdzie '_2% 3′

znajduje wszystkie wartości, które mają 2 w drugiej pozycji i kończą się 3.

7

gdzie '2___3′

znajduje dowolne wartości w pięciocyfrowej liczbie, które zaczynają się od 2 i kończą na 3.

weźmy prawdziwy przykład, rozważmy tabelę klientów zawierającą następujące rekordy.

+----+----------+-----+-----------+----------+| ID | NAME | AGE | ADDRESS | SALARY |+----+----------+-----+-----------+----------+| 1 | Ramesh | 32 | Ahmedabad | 2000.00 || 2 | Khilan | 25 | Delhi | 1500.00 || 3 | kaushik | 23 | Kota | 2000.00 || 4 | Chaitali | 25 | Mumbai | 6500.00 || 5 | Hardik | 27 | Bhopal | 8500.00 || 6 | Komal | 22 | MP | 4500.00 || 7 | Muffy | 24 | Indore | 10000.00 |+----+----------+-----+-----------+----------+

poniższy blok kodu jest przykładem, który wyświetli wszystkie rekordy z tabeli klientów, w których wynagrodzenie zaczyna się od 200.

SQL> SELECT * FROM CUSTOMERSWHERE SALARY LIKE '200%';

spowoduje to następujący wynik.

+----+----------+-----+-----------+----------+| ID | NAME | AGE | ADDRESS | SALARY |+----+----------+-----+-----------+----------+| 1 | Ramesh | 32 | Ahmedabad | 2000.00 || 3 | kaushik | 23 | Kota | 2000.00 |+----+----------+-----+-----------+----------+
ogłoszenia

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *