In SQL Server kunt u de LEN()
. gebruiken functie om het aantal tekens in een tekenreeks te retourneren. Dit is een Transact-SQL-functie die ook in Azure-databases kan worden gebruikt.
In MySQL moet je de CHAR_LENGTH()
. gebruiken functie.
Voorbeelden
Hier is een voorbeeld van elk.
SQL-server (T-SQL)
SELECT LEN('Cat') AS 'T-SQL';
Resultaat:
T-SQL ----- 3
MySQL
SELECT CHAR_LENGTH('Cat') AS MySQL;
Resultaat:
+-------+ | MySQL | +-------+ | 3 | +-------+
Pas op voor achterblijvende blanco's!
Een verschil tussen deze functies is de manier waarop ze spaties behandelen (bijvoorbeeld spaties aan het einde van de tekenreeks). T-SQL's LEN()
functie exclusief volgspaties, terwijl MySQL's CHAR_LENGTH()
functie omvat hen.
Dus als we volgspaties toevoegen aan de vorige voorbeelden, krijgen we het volgende.
SQL-server (T-SQL)
SELECT LEN('Cat ') AS 'T-SQL';
Resultaat:
T-SQL ----- 3
MySQL
SELECT CHAR_LENGTH('Cat ') AS MySQL;
Resultaat:
+-------+ | MySQL | +-------+ | 4 | +-------+
Als u volgspaties in MySQL moet uitsluiten, moet u de tekenreeks in een TRIM()
plaatsen functie. Zoals dit:
SELECT CHAR_LENGTH(TRIM('Cat ')) AS 'MySQL with TRIM';
Resultaat:
+-----------------+ | MySQL with TRIM | +-----------------+ | 3 | +-----------------+
Maar maak je geen zorgen over leidende blanco's!
Beide T-SQL's LEN()
functie en de CHAR_LENGTH()
. van MySQL functie omvatten leidende spaties.
SQL-server (T-SQL)
SELECT LEN(' Cat') AS 'T-SQL';
Resultaat:
T-SQL ----- 4
MySQL
SELECT CHAR_LENGTH(' Cat') AS 'MySQL';
Resultaat:
+-------+ | MySQL | +-------+ | 4 | +-------+