PostgreSQL SUBSTRING() Funzione con esempio Regex
⚡ Riepilogo intelligente
PostgreSQL SOTTOSTRINGA extracrestituisce parte di una stringa, utilizzando una posizione iniziale e una lunghezza opzionali, e confronta anche il testo con un'espressione regolare POSIX per estrarre modelli come numeri o codici.

Cosa è PostgreSQL Sottostringa?
Migliori PostgreSQL La funzione substring ti aiuta atract e restituisce parte di una stringa. Invece di restituire l'intera stringa, restituisce solo una parte di essa, il che è utile per troncare i codici e leggere campi a larghezza fissa.
Sintassi
Migliori PostgreSQL la funzione sottostringa assume la seguente sintassi:
substring( string [from starting_position] [for length] )
Scheda Sintetica
I seguenti parametri vengono utilizzati con la funzione substring:
| stringa | La stringa di origine il cui tipo di dati è varchar, char, string e così via. |
| posizione di partenza | Un parametro opzionale. Indica il luogo in cui l'extracL'elaborazione della stringa avrà inizio. Se ometti questo parametro, l'extracLa funzione inizia dalla posizione 1, che è il primo carattere della stringa. |
| lunghezza | Un parametro opzionale. Indica il numero di caratteri da esprimeretracestratto dalla stringa. Se ometti questo parametro, la funzione extracts dalla posizione iniziale alla fine della stringa. |
Esempi
In questo esempio, vogliamo estract i primi 4 caratteri della parola Guru99:
SELECT substring('Guru99' for 4);
Il comando restituirà quanto segue:
Non abbiamo specificato la posizione di partenza, quindi l'extraczione della sottostringa iniziata in posizione 1. Quattro caratteri sono stati espressitracted per restituire il risultato 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'extracla sottostringa deve iniziare dalla posizione 1 e devono essere espressi 4 caratteritracted.
Lasciateci esprimeretract 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 esprimeretracted non è stato specificato, l'extracla sequenza è arrivata fino alla fine della stringa.
Ecco un altro esempio:
SELECT substring('Guru99' from 5 for 2);
Il comando restituirà quanto segue:
Abbiamo iniziato extraczione in posizione 5 e 2 caratteri sono stati espressitracted.
Considera la tabella dei libri riportata di seguito:
Vogliamo farci un'idea approssimativa del nome di ogni libro. Possiamo esplicaretracsolo i primi 15 caratteri della colonna del nome della tabella:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Il comando restituirà quanto segue:
Ora abbiamo un'idea approssimativa del nome di ogni libro.
Corrispondenza di sottostringhe con l'espressione regolare SQL
In PostgreSQL, puoi estracuna sottostringa che corrisponde a una specifica espressione regolare POSIX. In questo caso, la funzione substring utilizza la seguente sintassi:
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Ecco una spiegazione dei parametri di cui sopra. La stringa è la stringa sorgente, la cui tipo di dati può essere varchar, char, string e così via. matching_pattern è il modello utilizzato per la ricerca nella stringa.
Esempi
SELECT SUBSTRING ( '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 pattern, cerchiamo un modello numerico; quando viene trovato, la funzione sottostringa extracha solo due caratteri.
Come trovare le sottostringhe usando pgAdmin
Vediamo ora come eseguire queste azioni utilizzando pgAdmin. Le query che non richiedono un database possono essere eseguite direttamente dalla finestra dell'editor di query. Basta procedere come segue:
Passo 1) Accedi al tuo account pgAdmin.
Passo 2) In pgAdmin, fai clic sull'icona Strumento di query.
Verrà aperta la finestra dell'editor di query.
Passo 3) Digita la seguente query nella finestra dell'editor.
SELECT substring('Guru99' for 4);
Passo 4) Fare clic sull'icona Esegui per eseguire la query.
Passo 5) L'esecuzione della query è terminata. 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:
Passo 1) Accedi al tuo account pgAdmin.
Passo 2) Dalla barra di navigazione a sinistra, fai clic su Database, quindi su Demo.
Passo 3) Digita la query nell'editor di query:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Passo 4) Fare clic sul pulsante Esegui.
Dovrebbe restituire quanto segue:
Ora abbiamo un'idea di base del nome di ogni libro.
Corrispondenza di sottostringhe con l'espressione regolare SQL
Per ottenere lo stesso risultato su pgAdmin, procedere come segue:
Passo 1) Accedi al tuo account pgAdmin.
Passo 2) Fare clic sull'icona Strumento di query.
Verrà aperta la finestra dell'editor di query.
Passo 3) Digita la seguente query nella finestra dell'editor.
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
Passo 4) Fare clic sull'icona Esegui per eseguire la query.
Dovrebbe restituire quanto segue:
Scarica il database utilizzato in questo tutorial



















