Úvod do funkcí MySQL String

MySQL má různé vestavěné funkce, které vývojářům zbavují jednoduchých úkolů, jako je formátování řetězců, a umožňují jim soustředit se na řešení většího problému. Tímto způsobem se vývojáři nemusí starat o psaní skriptů, aby mohli provádět jednoduché úkoly. O to se postarají vestavěné funkce. Vývojáři se musí zaměřit pouze na to, jak a kde použít tyto vestavěné funkce k dosažení konečného výsledku.

Jednou z takových kategorií vestavěných funkcí jsou řetězcové funkce MySQL. Formátování řetězců, jako je zřetězování, zobrazení v určitém formátu, vkládání / mazání podřetězců atd., Může být někdy únavným úkolem. MySQL řetězcové funkce se o to postarají za vás.

K ilustraci různých funkcí MySQL String musíme nejprve vytvořit databázi. Ve všech příkladech bude uvedena následující databáze:

MySQL String Functions

Řetězcová funkce se snadno používá. Zde budeme diskutovat o tom, jak používat řetězcové funkce v programování MySQL pomocí příkladů

1. ASCII (str)

Vrátí hodnotu ASCII znaku nejvíce vlevo řetězce str .

Select FirstName, ASCII(FirstName) from Person

2. BIN (N)

Vraťte binární ekvivalent N, kde N je Int / BigInt.

Select Phone, BIN(Phone) from Person

3. BIT_LENGTH (str)

Vrací délku str str str v bitech.

Select FirstName, BIT_LENGTH(FirstName) from Person

4. CHAR_LENGTH (str)

Vrátí délku řetězce str ve znakech.

Select FirstName, CHAR_LENGTH(FirstName) from Person

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

Vrátí řetězec vytvořený spojením str1 a strn. Pokud je jakýkoli podřetězec NULL, výsledkem je NULL.

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

6. CONCAT_WS (oddělovač, str1, …, strn)

Vrátí zřetězený řetězec oddělený oddělovačem.

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

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

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

Vrátí pozici indexu str str mezi str1 strn . Vrací 0, pokud nebylo nalezeno.

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

8. FORMÁT (x, D)

Zformátuje číslo X na '#, ###, ###. ##' pro zobrazení. D je počet desetinných míst. Ve výchozím nastavení je formát en-US.

Select FORMAT(Phone, 0) as Phone from Person

9. HEX (str) / UNHEX (hex_str)

Vrací hexadecimální ekvivalent řetězce str. UNHEX vrátí skutečný řetězec.

Select FirstName, HEX(FirstName) from Person

10. VLOŽIT (str, pos, len, newstr)

Nahrazuje dílčí řetězec začínající pozicí pos a délky len v řetězci str za newstr.

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

11. INSTR (str, subst) / LOCATE (subst, str) / POSITION (subst IN str)

Vrací pozici prvního výskytu substrátu v str.

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

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

Převede řetězec na malá a velká písmena.

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

13. VLEVO (str, len) / PRAVÉ (str, len)

Vrátí pouze znaky zcela vlevo a vpravo od řetězce str.

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

14. DÉLKA (str) / OCTET_LENGTH (str)

Vrátí délku str str str v bajtech. To je velmi podobné funkci CHAR_LENGTH. Rozdíl nastává, když jsou v řetězci vícebajtové znaky.

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

To se děje proto, že znak Euro (€) zabírá 3 bajty v paměti.

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

Vloží subřetězec z pozice 0 řetězce strstr na začátek a konec řetězce str, dokud výsledný řetězec nebude mít pouze znaky.

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)

Vrátí řetězec str po oříznutí bílých mezer zleva, zprava nebo z obou konců.

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

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

Vrátí podřetězec z řetězce str počínaje pozicí poz. Délky délky.

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

18. QUOTE (str)

Tento dotaz cituje a neregistruje řetězec str. Speciální znaky jsou uniknuty.

Select Address, QUOTE(Address) from Person

19. VÝMĚNA (str, from_str, to_str)

Nahrazuje všechny výskyty podřetězce from_str za podřetězec to_str v řetězci str . Je citlivý na velikost písmen.

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

20. REVERSE (str)

Obrátí řetězec str.

Select FirstName, REVERSE(FirstName) from Person

21. MEZERNÍK (N)

Tenhle je docela zábavný. Jednoduše vrací řetězec N mezer. Teď jsem zvědavý, co je přimělo vytvořit tuto funkci! Každopádně to vyzkoušejte sami.

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

Vrátí podřetězec z řetězce str počínaje pozicí pos, až do konce, pokud není zadán žádný řetězec, nebo pouze pro znaky len. Pamatujte, že index začíná v MySQL od 1.

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

23. SUBSTRING_INDEX (str, delim, count)

Vrátí podřetězec z řetězce str před nebo po počtu výskytů oddělovacího znaku. Pokud je počet kladný, před vrácením výskytu subřetězec. Pokud je počet záporný, po vrácení výskytu se objeví subřetězec.

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

Závěr - MySQL String funkce

Zjistili jste tedy některé z těchto funkcí užitečné? Pomohlo vám něco z toho vyřešit případ použití? Jsem si jistý, že ano. Nejen řetězcové funkce, ale vestavěné funkce MySQL jsou skvělým způsobem, jak dosáhnout výsledků při minimálních dotazech, a tak znovu použít stávající kód a využít sílu rámce na plnou kapacitu.

Doporučené články

Toto byl průvodce funkcemi MySQL String. Zde jsme diskutovali, jak používat řetězcové funkce v programování MySQL pomocí příkladů. Další informace naleznete také v následujících článcích -

  1. Různé typy MySQL operátorů
  2. Jak nainstalovat MySQL?
  3. Základní pro Advance Příkazy MySQL.
  4. Cheat Sheet MySQL
  5. Jak implementovat příkaz Vložit do MySQL?

Kategorie: