Ce face STRCMP()
STRCMP() returnează 0 dacă textele sunt egale, -1 dacă primul vine înainte în ordine alfabetică și 1 dacă vine după. Comparația folosește colația, deci cu setările implicite nu contează literele mari.
Parametri
| Parametru | Descriere |
|---|---|
sir1 |
Primul text. |
sir2 |
Al doilea text. |
Ce returnează
-1, 0 sau 1 (NULL dacă un argument este NULL).
Exemple
Exemplul 1: Ordinea alfabetică
SELECT STRCMP('mere', 'pere') AS a,
STRCMP('pere', 'mere') AS b,
STRCMP('Mere', 'mere') AS c;
Rezultat
+----+---+---+
| a | b | c |
+----+---+---+
| -1 | 1 | 0 |
+----+---+---+
Greșeli frecvente
- Te aștepți ca
STRCMP('Mere', 'mere')să dea 1. Cu colația implicită_ci(case insensitive) rezultatul este 0. Pentru comparație exactă folosește o colație binară:STRCMP(BINARY 'Mere', 'mere')sauCOLLATE utf8mb4_bin.
Comenzi înrudite
Operatori de comparație: Compară două valori și returnează 1 (adevărat), 0 (fals) sau NULL.LIKE: Caută texte după un model: începe cu, se termină cu, conține.LOCATE(): Găsește poziția primei apariții a unui text în alt text (0 dacă lipsește).