In MySQL, il SUBSTR() la funzione restituisce una sottostringa a partire dalla posizione specificata.
Entrambi SUBSTR() e MID() sono sinonimi di SUBSTRING() .
Sintassi
La sintassi di base è questa:
SUBSTR(str,pos,len)
Qui, str è la stringa, pos è la posizione da cui iniziare la sottostringa e len è un argomento facoltativo che determina il numero di caratteri da restituire da quella posizione iniziale.
Esistono diverse varianti su come utilizzare questa funzione, quindi l'intera gamma di sintassi è simile a questa:
SUBSTR(str,pos) SUBSTR(str FROM pos) SUBSTR(str,pos,len) SUBSTR(str FROM pos FOR len)
Questi sono dimostrati nei seguenti esempi.
Esempio 1 – Utilizzo di base
Ecco un esempio di SUBSTR(str,pos) sintassi:
SELECT SUBSTR('I play the drums', 3) Result; Risultato:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
In questo esempio, prendo una sottostringa dalla stringa, a partire dalla posizione 3.
Esempio 2:utilizzo della clausola FROM
Ecco come fare la stessa cosa, ma questa volta usando il SUBSTR(str FROM pos) sintassi:
SELECT SUBSTR('I play the drums' FROM 3) Result; Risultato:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
Quindi otteniamo lo stesso risultato.
In questo caso, FROM è SQL standard. Nota che questa sintassi non utilizza le virgole.
Esempio 3:specificare una lunghezza
In questo esempio, utilizzo SUBSTR(str,pos,len) sintassi:
SELECT SUBSTR('I play the drums', 3, 4) Result; Risultato:
+--------+ | Result | +--------+ | play | +--------+
Qui specifico che la sottostringa restituita dovrebbe essere lunga 4 caratteri.
Esempio 4 – Specificare una lunghezza (usando la clausola FOR)
In questo esempio, utilizzo SUBSTR(str FROM pos FOR len) sintassi:
SELECT SUBSTR('I play the drums' FROM 3 FOR 5) Result; Risultato:
+--------+ | Result | +--------+ | play | +--------+
Quindi questa volta abbiamo utilizzato l'SQL standard per ottenere lo stesso risultato