Pozycje liczone są od nr. 1
INSTR zwraca pozycję wystąpienia separatora / znaku.
> SELECT INSTR('foobarbar', 'bar'); -> 4
SUBSTRING_INDEX szuka separatora sep w ciągu str i zwraca podciąg przed wystąpieniem n-tego (count) separatora sep. Jeśli count jest ujemny – zmienia kierunek – szuka sep od końca i zwraca ciąg do końca.
SUBSTRING_INDEX(str, sep, count)
Szuka separatora @ w nazwie użytkownika (john@localhost) i zwraca nazwę bez tego separatora @
> SELECT SUBSTRING_INDEX( CURRENT_USER(), '@', 1); -> root > SELECT SUBSTRING_INDEX('www.mariadb.org', '.', 2); -> 'www.mariadb' > SELECT SUBSTRING_INDEX('www.mariadb.org', '.', -2); -> 'mariadb.org'
SUBSTRING – zwraca podciąg od pozycji
SUBSTRING(str,pos), - zwraca podciąg od pozycji pos do końca SUBSTRING(str,pos,len), - zwraca podciąg o długości len od pos
Zwraca podciąg od pozycji pos
> SELECT SUBSTRING('Quadratically',5); -> 'ratically' > SELECT SUBSTRING('Quadratically',5,6); -> 'ratica' > SELECT SUBSTRING('Sakila', -3); -> 'ila' > SELECT SUBSTRING('Sakila', -5, 3); -> 'aki'
STRCMP – porównanie ciągów – zwraca 0 jeśli ciągi takie same,
-1 jeśli pierwszy jest mniejszy niż drugi, 1 jeśli pierwszy jest większy niż drugi
STRCMP( str1, str2)
> SELECT STRCMP('text', 'text2'); -> -1 > SELECT STRCMP('text2', 'text'); -> 1 > SELECT STRCMP('text', 'text'); -> 0