Przejdź do głównej zawartości

Wyodrębnia z podanego ciągu znaków fragment o określonej liczbie znaków, zaczynając od wskazanej pozycji.

  • Formy bez argumentu len zwracają podciąg ciągu str zaczynający się na pozycji pos.
  • Formy z argumentem len zwracają podciąg ciągu str o długości len znaków, zaczynający się na pozycji pos.

Dla pos można też użyć wartości ujemnej. W takim przypadku początek podciągu znajduje się pos znaków od końca ciągu, a nie od jego początku. Wartość ujemną można stosować dla pos w każdej formie tej funkcji. Wartość 0 dla pos zwraca pusty ciąg. Pozycja pierwszego znaku w ciągu, z którego wyodrębniany jest podciąg, jest liczona jako 1.

func.substr(<str>, <pos>, <len>)
func.substr('Quadratically', 5, 6)
┌────────────────────────────────────┐
│ func.substr('Quadratically', 5, 6) │
├────────────────────────────────────┤
│ ratica │
└────────────────────────────────────┘
SUBSTR(<str>, <pos>)
SUBSTR(<str>, <pos>, <len>)
Argumenty Opis
<str> Główny ciąg znaków, z którego są wyodrębniane znaki
<pos> Pozycja (licząc od 1), od której zaczyna się podciąg. Jeśli jest ujemna, liczona jest od końca
<len> Maksymalna długość wyodrębnianego podciągu

VARCHAR

SELECT
SUBSTRING('Quadratically', 5),
SUBSTR('Quadratically', 5),
MID('Quadratically', 5);
┌─────────────────────────────────────────────────────────────────────────────────────────────────┐
│ substring('quadratically' from 5) │ substring('quadratically' from 5) │ mid('quadratically', 5) │
├───────────────────────────────────┼───────────────────────────────────┼─────────────────────────┤
│ ratically │ ratically │ ratically │
└─────────────────────────────────────────────────────────────────────────────────────────────────┘
SELECT
SUBSTRING('Quadratically', 5, 6),
SUBSTR('Quadratically', 5, 6),
MID('Quadratically', 5, 6);
┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ substring('quadratically' from 5 for 6) │ substring('quadratically' from 5 for 6) │ mid('quadratically', 5, 6) │
├─────────────────────────────────────────┼─────────────────────────────────────────┼────────────────────────────┤
│ ratica │ ratica │ ratica │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘