SQL Charindex

SQL Charindex
Operacje łańcuchowe i ciągów to uniwersalne funkcje we wszystkich bazach danych. Dlatego prawie niemożliwe jest posiadanie nietrywialnej bazy danych bez użycia informacji o łańcuchu i tekstu.

W tym artykule omówiono standardową operację ciągów: użycie starszej i standardowej SQL, aby znaleźć podłoże w innym ciągu.

Dziedzictwo SQL

Możemy znaleźć pozycję substring w Legacy SQL za pomocą funkcji instal ().

Funkcja przyjmuje ciąg i podłoże jako argumenty. Następnie zwraca jedną opartą na indeksie pozycję oznaczającą pierwsze występowanie podłoża.

Jeśli podłoże nie zostanie znalezione, funkcja zwraca 0.

Składnia funkcji jest wyrażona poniżej:

Inst („String”, „Substring”);

Możemy użyć tej funkcji, jak pokazano poniżej:

Wybierz instr („Linuxhint”, „wskazówka”) jako pozycja;

Powinien powrócić:

POZYCJA
6

Jak wspomniano, wskaźnik pozycji zaczyna się od 1, a nie 0.

Standardowy SQL

W standardowym SQL używamy funkcji strPOS (), aby uzyskać lokalizację substring. Funkcja przyjmuje dwa argumenty: ciąg i poddasz.

Następnie zwraca położenie 1-indeksuu pierwszego występowania podłoża. Jeśli podłoże nie zostanie znalezione, funkcja zwraca 0.

Składnia jest jak pokazana poniżej:

StrPOS (string, podaj);

Przykładowe użycie tej funkcji jest jak pokazano poniżej:

WYBIERAĆ
Strpos („Linuxhint”, „wskazówka”) jako pozycja;

Zapytanie powinno zwrócić pozycję, jak pokazano:

POZYCJA
6

Specyficzny dla silnika bazy danych

Różne silniki bazy danych zapewniają różne funkcje określania pozycji podłańca. Chociaż funkcjonalność pozostaje taka sama, nazywanie funkcji różni się w różnych silnikach bazy danych.

Postgresql i MySQL

Zarówno PostgreSQL, jak i MySQL używają funkcji pozycji (), aby uzyskać lokalizację podłoża. Przykładem użycia jest jak pokazano:

Wybierz pozycję („wskazówka” w „Linuxhint”) jako pozycja;

Należy zauważyć, że funkcja używa operatora In, aby określić, który podłoże do wyszukiwania. To powinno powrócić:

POZYCJA
----------
6
(1 rząd)

W MySQL możesz również użyć funkcji lokalizacji (), aby znaleźć pozycję podłoża. Przykładowe użycie pokazano poniżej:

MySQL> Wybierz Lokalizuj („wskazówka”, „Linuxhint”);
-> 6

MS SQL Server

W SQL Server używamy funkcji CharIndex (), aby określić pozycję podłoża. Przykładowe użycie pokazano poniżej:

Wybierz CharIndex („wskazówka”, „Linuxhint”);
-> 6

IBM DB2

W DB2 można znaleźć pozycję podjazdu za pomocą funkcji Posstr (). Przykład jest pokazany poniżej:

Wybierz Posstr („wskazówka”, „Linuxhint”);
-> 6

Wniosek

W tym artykule zbadaliśmy różne metody i techniki zlokalizowania pozycji substring w starszej i standardowej SQL. Omówiliśmy również każdą odmianę metod dla różnych silników bazy danych.

Aby dowiedzieć się więcej o standardowych i starszych SQL, bądź na bieżąco z artykułami Linuxhint.