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