Klauzula LIKE w MS SQL Server służy do porównywania wartości z podobnymi wartościami przy użyciu operatorów wieloznacznych. Istnieją dwa symbole wieloznaczne używane w połączeniu z operatorem LIKE –
- Znak procentu (%)
- Podkreślnik (_)
Znak procentu reprezentuje zero, jeden lub wiele znaków. Podkreślnik reprezentuje pojedynczą liczbę lub znak. Symbole te mogą być używane w kombinacjach.
Syntaktyka
Poniżej przedstawiono podstawową składnię % i _.
Można łączyć N warunków przy użyciu operatorów AND lub OR. XXXX może być dowolną wartością liczbową lub łańcuchową.
Przykłady
Poniżej znajduje się kilka przykładów pokazujących część WHERE posiadającą różne klauzule LIKE z operatorami '%’ i '_’.
Sr.Nr | Stwierdzenie & Opis |
---|---|
1 |
WHERE SALARY LIKE '200%’ Znajduje jakiekolwiek wartości, które zaczynają się od 200 |
2 |
WHERE SALARY LIKE '%200%’ Finds wszelkie wartości, które mają 200 na dowolnej pozycji |
3 |
WHERE SALARY LIKE '_00%’ Znajduje wszelkie wartości, które mają 00 na drugiej i trzeciej pozycji |
4 |
WHERE SALARY LIKE '2_%_%’ Znajduje wszelkie wartości, które zaczynają się od 2 i mają co najmniej 3 znaki długości |
5 |
WHERE SALARY LIKE '%2′ Znajduje wszelkie wartości, które kończą się na 2 |
6 |
WHERE SALARY LIKE '_2%3′ Znajduje wszystkie wartości, które mają 2 na drugiej pozycji i kończą się na 3 |
7 |
WHERE SALARY LIKE '2___3′ Znajduje wszystkie wartości w pięciocyfrowej liczbie, które zaczynają się od 2 i kończą się na 3 Znajduje wszystkie wartości w pięciocyfrowej liczbie, które zaczynają się od 2 i kończą się na 2.które zaczynają się od 2 i kończą na 3 |
Rozważmy tabelę CUSTOMERS 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
Następujące polecenie jest przykładem, który wyświetli wszystkie rekordy z tabeli KLIENCI, w których SALARY zaczyna się od 200.
SELECT * FROM CUSTOMERS WHERE SALARY LIKE '200%';
Powyższe polecenie spowoduje wyświetlenie następujących danych wyjściowych.
ID NAME AGE ADDRESS SALARY 1 Ramesh 32 Ahmedabad 2000.00 3 kaushik 23 Kota 2000.00
.