Co to jest podciąg PostgreSQL?
Funkcja podciągów PostgreSQL pomaga wyodrębnić i zwrócić część ciągu. Zamiast zwracać cały ciąg, zwraca tylko jego część.
Z tego samouczka PostgreSQL dowiesz się:
- Co to jest podciąg Postgresql?
- Składnia
- Przykłady
- Dopasowywanie podłańcuchów za pomocą wyrażeń regularnych SQL
- Korzystanie z pgAdmin
Składnia
Funkcja podciągowa PostgreSQL przyjmuje następującą składnię:
substring( string [from starting_position] [for length] )
Parametry
Nazwa | Opis |
strunowy | Ciąg źródłowy, którego typem danych jest varchar, char, string itp. |
pozycja startowa | Jest to parametr opcjonalny. Oznacza miejsce, w którym rozpocznie się wydobywanie struny. Jeśli pominiesz ten parametr, wyodrębnianie rozpocznie się od pozycji 1, która jest pierwszym znakiem w ciągu. |
długość | Jest to parametr opcjonalny. Oznacza liczbę znaków, które mają zostać wyodrębnione z ciągu. Jeśli pominiesz ten parametr, funkcja wyodrębni z pozycji początkowej do końca ciągu. |
Przykłady
W tym przykładzie chcemy wyodrębnić pierwsze 4 znaki ze słowa Guru99:
SELECT substring('Guru99' for 4);
Polecenie zwróci następujące informacje:
Nie określiliśmy pozycji początkowej, więc wyodrębnianie podciągu rozpoczyna się od pozycji 1. Wyodrębniono 4 znaki, aby zwrócić powyższe.
Poniższy przykład pokazuje, jak określić pozycję początkową:
SELECT substring('Guru99' from 1 for 4);
Polecenie zwróci następujące informacje:
Określiliśmy, że wyodrębnianie podciągu powinno rozpoczynać się od pozycji 1 i należy wyodrębnić 4 znaki.
Wyodrębnijmy 99 ze struny Guru99:
SELECT substring('Guru99' from 5);
Polecenie zwróci następujące informacje:
Jako pozycję początkową określiliśmy 5. Ponieważ nie określono liczby znaków do wyodrębnienia, wyodrębnianie przebiegło do końca ciągu.
Oto kolejny przykład:
SELECT substring('Guru99' from 5 for 2);
Polecenie zwróci następujące informacje:
Rozpoczęliśmy wyodrębnianie na pozycji 5 i zostały wyodrębnione 2 znaki.
Rozważ tabelę książek podaną poniżej:
Chcemy mieć ogólne pojęcie o nazwie każdej książki. Możemy jednak wyodrębnić tylko pierwsze 15 znaków z kolumny nazwy tabeli:
SELECTid,SUBSTRING(name, 1, 15 ) AS name_initialFROMBookORDER BYid;
Polecenie zwróci następujące informacje:
Mamy teraz ogólne pojęcie o nazwie każdej książki.
Dopasowywanie podłańcuchów za pomocą wyrażeń regularnych SQL
W PostgreSQL możemy wyodrębnić podłańcuch pasujący do określonego wyrażenia regularnego POSIX. W tym przypadku funkcja podciągu jest używana z następującą składnią:
SUBSTRING(string FROM matching_pattern)
lub
SUBSTRING(string, matching_pattern);
Oto wyjaśnienie powyższych parametrów:
Ciąg jest ciągiem źródłowym, którego typ danych to varchar, char, string itp.
Dopasowanie_wzorcowe to wzorzec, który ma być używany do wyszukiwania w ciągu.
Przykłady:
SELECTSUBSTRING ('Your age is 22','([0-9]{1,2})') as age;
Polecenie zwróci następujące informacje:
Naszym ciągiem wejściowym jest Twój wiek to 22 lata. We wzorcu szukamy wzorca numerycznego w naszym ciągu, gdy ten zostanie znaleziony, funkcja podłańcuchowa powinna wyodrębnić tylko dwa znaki.
Korzystanie z pgAdmin
Zobaczmy teraz, jak akcje są wykonywane za pomocą pgAdmin.
Powyższe zapytania, w których nie potrzebujemy bazy danych, można wykonać bezpośrednio z okna edytora zapytań. Po prostu wykonaj następujące czynności:
Krok 1) Zaloguj się do swojego konta pgAdmin.
Krok 2) Kliknij ikonę Narzędzia do wysyłania zapytań.
Otworzy się okno edytora zapytań.
Krok 3) Wpisz następujące zapytanie w oknie edytora.
SELECT substring('Guru99' for 4);
Krok 4) Kliknij ikonę Wykonaj, aby wykonać zapytanie.
Powinien zwrócić następujące informacje:
Przykład 2:
SELECT substring('Guru99' from 1 for 4);
Powinien zwrócić następujące informacje:
Oto następny przykład:
SELECT substring('Guru99' from 5);
Powinien zwrócić następujące informacje:
Przykład 3:
SELECT substring('Guru99' from 5 for 2);
Powinien zwrócić następujące informacje:
Teraz uruchommy przykład przy użyciu tabeli Book w bazie danych Demo:
Krok 1) Zaloguj się do swojego konta pgAdmin.
Krok 2)
- Z paska nawigacji po lewej stronie kliknij Bazy danych.
- Kliknij opcję Demo.
Krok 3) Wpisz zapytanie w edytorze zapytań:
SELECTid,SUBSTRING(name, 1, 15 ) AS name_initialFROMBookORDER BYid;
Krok 4) Kliknij przycisk Wykonaj.
Powinien zwrócić następujące informacje:
Mamy teraz podstawowe pojęcie o nazwie każdej książki.
Dopasowywanie podłańcuchów za pomocą wyrażeń regularnych SQL
Aby osiągnąć to samo na pgAdmin, wykonaj następujące czynności:
Krok 1) Zaloguj się do swojego konta pgAdmin.
Krok 2) Kliknij ikonę Narzędzia do wysyłania zapytań.
Otworzy się okno edytora zapytań.
Krok 3) Wpisz następujące zapytanie w oknie edytora.
SELECTSUBSTRING ('Your age is 22','([0-9]{1,2})') as age;
Krok 4) Kliknij ikonę Wykonaj, aby wykonać zapytanie.
Powinien zwrócić następujące informacje:
Podsumowanie:
- Funkcja PostgreSQL Substring pomaga w wyodrębnianiu i zwracaniu tylko części ciągu.
- Pierwszy znak ciągu znajduje się na pozycji 1.
- Jeśli liczba znaków do wyodrębnienia z ciągu nie zostanie określona, funkcja wyodrębni znaki od określonej pozycji początkowej do końca ciągu.
- Jeśli zostanie określona liczba znaków do wyodrębnienia, zostanie wyodrębniona tylko ta liczba znaków.
Pobierz bazę danych używaną w tym samouczku