PostgreSQL SUBSTRING () con Example

Sommario:

Anonim

Cos'è la sottostringa PostgreSQL?

La funzione di sottostringa PostgreSQL ti aiuta a estrarre e restituire parte di una stringa. Invece di restituire l'intera stringa, ne restituisce solo una parte.

In questo tutorial su PostgreSQL imparerai:

  • Cos'è la sottostringa Postgresql?
  • Sintassi
  • Esempi
  • Sottostringa corrispondente con l'espressione regolare SQL
  • Utilizzando pgAdmin

Sintassi

La funzione di sottostringa PostgreSQL ha la seguente sintassi:

substring( string [from starting_position] [for length] )

Parametri

Nome Descrizione
corda La stringa di origine il cui tipo di dati è varchar, char, string e così via.
posizione di partenza È un parametro opzionale. Denota il luogo in cui inizierà l'estrazione della corda. Se ometti questo parametro, l'estrazione inizierà dalla posizione 1, che è il primo carattere della stringa.
lunghezza È un parametro opzionale. Indica il numero di caratteri da estrarre dalla stringa. Se ometti questo parametro, la funzione verrà estratta da posizione_inizio alla fine della stringa.

Esempi

In questo esempio, vogliamo estrarre i primi 4 caratteri dalla parola Guru99:

SELECT substring('Guru99' for 4);

Il comando restituirà quanto segue:

Non abbiamo specificato la posizione iniziale, quindi l'estrazione della sottostringa inizia dalla posizione 1. Sono stati estratti 4 caratteri per restituire quanto sopra.

L'esempio seguente mostra come specificare la posizione iniziale:

SELECT substring('Guru99' from 1 for 4);

Il comando restituirà quanto segue:

Abbiamo specificato che l'estrazione della sottostringa deve iniziare dalla posizione 1 e devono essere estratti 4 caratteri.

Estraiamo 99 dalla stringa Guru99:

SELECT substring('Guru99' from 5);

Il comando restituirà quanto segue:

Abbiamo specificato la posizione iniziale come 5. Poiché il numero di caratteri da estrarre non è stato specificato, l'estrazione è stata eseguita fino alla fine della stringa.

Ecco un altro esempio:

SELECT substring('Guru99' from 5 for 2);

Il comando restituirà quanto segue:

Abbiamo iniziato l'estrazione alla posizione 5 e sono stati estratti 2 caratteri.

Considera la tabella del libro riportata di seguito:

Vogliamo avere un'idea approssimativa del nome di ogni libro. Tuttavia, possiamo estrarre solo i primi 15 caratteri dalla colonna del nome della tabella:

SELECTid,SUBSTRING(name, 1, 15 ) AS name_initialFROMBookORDER BYid;

Il comando restituirà quanto segue:

Ora abbiamo un'idea approssimativa del nome di ogni libro.

Sottostringa corrispondente con l'espressione regolare SQL

In PostgreSQL, possiamo estrarre una sottostringa che corrisponde a un'espressione regolare POSIX specificata. In questo caso, la funzione sottostringa viene utilizzata con la seguente sintassi:

SUBSTRING(string FROM matching_pattern)

o

SUBSTRING(string, matching_pattern);

Ecco una spiegazione dei parametri di cui sopra:

La stringa è la stringa di origine il cui tipo di dati è varchar, char, string, ecc.

Il matching_pattern è il pattern da utilizzare per la ricerca nella stringa.

Esempi:

SELECTSUBSTRING ('Your age is 22','([0-9]{1,2})') as age;

Il comando restituirà quanto segue:

La nostra stringa di input è la tua età è 22. Nel modello, stiamo cercando un modello numerico nella nostra stringa quando viene trovato, la funzione sottostringa dovrebbe estrarre solo due caratteri.

Utilizzando pgAdmin

Vediamo ora come vengono eseguite le azioni utilizzando pgAdmin.

Le query precedenti in cui non è necessario un database possono essere eseguite direttamente dalla finestra dell'editor di query. Basta fare quanto segue:

Passaggio 1) Accedi al tuo account pgAdmin.

Passaggio 2) Fare clic sull'icona Query Tool.

Si aprirà la finestra dell'editor delle query.

Passaggio 3) Digitare la seguente query nella finestra dell'editor.

SELECT substring('Guru99' for 4);

Passaggio 4) Fare clic sull'icona Esegui per eseguire la query.

Dovrebbe restituire quanto segue:

Esempio 2:

SELECT substring('Guru99' from 1 for 4);

Dovrebbe restituire quanto segue:

Ecco il prossimo esempio:

SELECT substring('Guru99' from 5);

Dovrebbe restituire quanto segue:

Esempio 3:

SELECT substring('Guru99' from 5 for 2);

Dovrebbe restituire quanto segue:

Ora, eseguiamo l'esempio utilizzando la tabella Book del database Demo:

Passaggio 1) Accedi al tuo account pgAdmin.

Passo 2)

  1. Dalla barra di navigazione a sinistra, fare clic su Database.
  2. Fare clic su Demo.

Passaggio 3) Digita la query nell'editor di query:

SELECTid,SUBSTRING(name, 1, 15 ) AS name_initialFROMBookORDER BYid;

Passaggio 4) Fare clic sul pulsante Esegui.

Dovrebbe restituire quanto segue:

Ora abbiamo un'idea di base del nome di ogni libro.

Sottostringa corrispondente con l'espressione regolare SQL

Per ottenere lo stesso risultato su pgAdmin, procedi come segue:

Passaggio 1) Accedi al tuo account pgAdmin.

Passaggio 2) Fare clic sull'icona Query Tool.

Si aprirà la finestra dell'editor delle query.

Passaggio 3) Digitare la seguente query nella finestra dell'editor.

SELECTSUBSTRING ('Your age is 22','([0-9]{1,2})') as age;

Passaggio 4) Fare clic sull'icona Esegui per eseguire la query.

Dovrebbe restituire quanto segue:

Sommario:

  • La funzione Substring di PostgreSQL aiuta a estrarre e restituire solo una parte di una stringa.
  • Il primo carattere della stringa è nella posizione 1.
  • Se il numero di caratteri da estrarre dalla stringa non è specificato, la funzione estrarrà i caratteri dalla posizione iniziale specificata alla fine della stringa.
  • Se viene specificato il numero di caratteri da estrarre, verrà estratto solo quel numero di caratteri.

Scarica il database utilizzato in questo tutorial