Inleiding tot MySQL String-functies

MySQL heeft verschillende ingebouwde functies om de ontwikkelaars te ontlasten van eenvoudige taken zoals het formatteren van strings en hen te laten focussen op de oplossing voor het grotere probleem. Op deze manier hoeven ontwikkelaars zich geen zorgen te maken over het schrijven van scripts om eenvoudige taken uit te voeren. De ingebouwde functies zorgen daarvoor. Ontwikkelaars hoeven zich alleen te concentreren op hoe en waar deze ingebouwde functies moeten worden gebruikt om het eindresultaat te bereiken.

Een dergelijke categorie van ingebouwde functies zijn de MySQL-stringfuncties. Tekenreeksopmaak zoals aaneenschakeling, weergeven in een bepaald formaat, invoegen / verwijderen van substrings, enz. Kan soms een vervelende taak zijn. MySQL-stringfuncties zorgen daarvoor voor u.

Om verschillende MySQL String-functies te illustreren, moeten we eerst een database maken. In alle voorbeelden zal naar de volgende database worden verwezen:

MySQL String Functies

Stringfunctie is gemakkelijk te gebruiken. Hier zullen we bespreken hoe stringfuncties kunnen worden gebruikt in MySQL-programmering met behulp van voorbeelden

1. ASCII (str)

Retourneert de ASCII-waarde van het meest linkse teken van de tekenreeks str .

Select FirstName, ASCII(FirstName) from Person

2. BIN (N)

Retourneer het binaire equivalent van N, waarbij N een Int / BigInt is.

Select Phone, BIN(Phone) from Person

3. BIT_LENGTH (str)

Retourneert de lengte van de string str in bits.

Select FirstName, BIT_LENGTH(FirstName) from Person

4. CHAR_LENGTH (str)

Retourneert de lengte van de tekenreeks str in tekens.

Select FirstName, CHAR_LENGTH(FirstName) from Person

5. CONCAT (str1, str2, …., Strn)

Retourneert een tekenreeks die wordt gevormd door str1 te verbinden met strn. Als een subtekenreeks NULL is, is het resultaat NULL.

Select FirstName, LastName, CONCAT(FirstName, LastName) as DisplayName from Person

6. CONCAT_WS (scheidingsteken, str1, …, strn)

Retourneert een aaneengeschakelde string gescheiden door een scheidingsteken.

Select FirstName, LastName, CONCAT_WS(' ', FirstName, LastName) as DisplayName from Person

Select FirstName, LastName, CONCAT_WS(', ', LastName, FirstName) as DisplayName from Person

7. VELD (str, str1, str2, …, strn)

Retourneert de indexpositie van string str tussen str1 naar strn . Retourneert 0 als niet gevonden.

Select FirstName, LastName, FIELD('John', FirstName, LastName) as IsJohn from Person

8. FORMAT (x, D)

Formatteert het getal X voor weergave '#, ###, ###. ##'. D is het aantal decimalen. Standaard is het formaat en-US.

Select FORMAT(Phone, 0) as Phone from Person

9. HEX (str) / UNHEX (hex_str)

Retourneert een hexadecimaal equivalent van de tekenreeks str. UNHEX retourneert de werkelijke tekenreeks.

Select FirstName, HEX(FirstName) from Person

10. PLAATSEN (str, pos, len, newstr)

Vervangt de subtekenreeks beginnend bij positie pos en van lengte len in de string str door newstr.

Select FirstName, LastName, INSERT(LastName, 3, 20, FirstName) as LoginID from Person

11. INSTR (str, substr) / LOCATE (substr, str) / POSITIE (substr IN str)

Retourneert de positie van het eerste exemplaar van substr in str.

Select FirstName, INSTR(FirstName, 'oo'), LOCATE('hn', FirstName), POSITION('al' IN FirstName) from Person

12. LCASE () / LOWER () en UCASE () / UPPER ()

Converteert een tekenreeks naar kleine letters en hoofdletters.

Select FirstName, LOWER(FirstName) as Lower, UPPER(FirstName) as Upper from Person

13. LINKS (str, len) / RECHTS (str, len)

Retourneert de meest linkse en meest rechtse len-tekens uit de tekenreeks str.

Select FirstName, LastName, CONCAT(LEFT(LastName, 3), RIGHT(FirstName, 2)) as LoginID from Person

14. LENGTH (str) / OCTET_LENGTH (str)

Retourneert de lengte van de string str in bytes. Dit lijkt erg op de functie CHAR_LENGTH. Het verschil komt wanneer er multibyte-tekens in de tekenreeks zitten.

Select CHAR_LENGTH('€'), Length('€')

Dit gebeurt omdat het Euro-teken (€) 3 bytes in beslag neemt.

15. LPAD (str, len, padstr) / RPAD (str, len, padstr)

Voegt een subtekenreeks in vanaf positie 0 van de tekenreeks padstr aan het begin en einde van de tekenreeks str totdat de resulterende reeks lenzen bevat.

Select FirstName, LastName, LPAD(CONCAT_WS(' ', FirstName, LastName), Char_Length(CONCAT_WS(' ', FirstName, LastName))+Char_Length('Mr. '), 'Mr. ') as DisplayName from Person

16. LTRIM (str) / RTRIM (str) / TRIM (str)

Retourneert de tekenreeks str na het bijsnijden van witte spaties van links, rechts of beide uiteinden.

Select LTRIM(' abc ') as L, RTRIM(' abc ') as R, TRIM(' abc ') as T

17. MIDDEL (str, pos, len) / SUBSTRING (str, pos, len)

Retourneert een substring uit string str vanaf positie pos van lengte len.

Select FirstName, SUBSTRING(FirstName, 2, 4) as a sub from Person

18. QUOTE (str)

Deze query citeert de string str. Speciale tekens zijn ontsnapt.

Select Address, QUOTE(Address) from Person

19. REPLACE (str, from_str, to_str)

Vervangt alle exemplaren van subtekenreeks from_str door subtekenreeks naar_str in de tekenreeks str . Het is hoofdlettergevoelig.

Select Address, REPLACE(Address, 'S', 'ss') from Person

20. ACHTERUIT (str)

Keert de string str om.

Select FirstName, REVERSE(FirstName) from Person

21. RUIMTE (N)

Deze is best grappig. Het geeft eenvoudig een reeks van N lege spaties terug. Nu vraag ik me af waarom ze deze functie hebben gemaakt! Hoe dan ook, probeer het zelf uit.

22. SUBSTR (str, pos) / SUBSTRING (str, pos) / SUBSTR (str, pos, len) / SUBSTRING (str, pos, len)

Retourneert een substring uit de string str vanaf positie pos, tot het einde als er geen len is opgegeven of anders voor len-tekens. Vergeet niet dat Index begint vanaf 1 in MySQL.

Select FirstName, LastName, SUBSTR(FirstName, 2), SUBSTRING(LastName, 2, 2) from Person

23. SUBSTRING_INDEX (str, delim, count)

Retourneert een substring uit de tekenreeks str voor of na het voorkomen van de telling van het scheidingsteken. Als de telling positief is, wordt een subtekenreeks vóór het optreden geretourneerd. Als de telling negatief is, wordt een subtekenreeks na het optreden geretourneerd.

Select Address, SUBSTRING_INDEX(Address, '-', 1) as House, SUBSTRING_INDEX(Address, ', ', 1) as Street, SUBSTRING_INDEX(Address, ', ', -1) as City from Person

Conclusie - MySQL String-functies

Dus, vonden sommige van deze functies nuttig? Heeft dit u geholpen bij het oplossen van een use-case die u had? Ik weet zeker dat ze dat doen. Niet alleen stringfuncties, maar de ingebouwde functies van MySQL zijn een geweldige manier om de resultaten te bereiken in minimale query's, waardoor de bestaande code opnieuw wordt gebruikt en de kracht van het framework volledig wordt benut.

Aanbevolen artikelen

Dit is een gids voor MySQL String-functies geweest. Hier hebben we besproken hoe je de stringfunctie kunt gebruiken in MySQL-programmering met behulp van voorbeelden. U kunt ook de volgende artikelen bekijken voor meer informatie -

  1. Verschillende soorten MySQL-operators
  2. Hoe MySQL te installeren?
  3. Basis om opdrachten van MySQL te bevorderen.
  4. Cheatsheet MySQL
  5. Hoe Insert Command in MySQL te implementeren?