<Строка>\').
Функция ORD() возвращает числовой код первого символа в строке. Например, функция ORD(CHAR(53402,53632,53643,53435,53438,53426 USING utf8)) возвращает значение 53402.
• CONCAT(\'<Строка 1>\',\'<Строка 2>\',…, \'<Строка N>\').
Функция CONCAT() возвращает результат объединения своих аргументов. Например, функция CONCAT(\'ООО “Кускус”\',\'Петров\',\'Крылов\') возвращает значение ООО «Кускус»ПетровКрылов.
• CONCAT_WS(\'Разделитель\',\'<Строка 1>\',\'<Строка 2>\',…,\'<Строка N>\').
Функция CONCAT_WS() возвращает результат объединения своих аргументов, при этом первый аргумент используется как разделитель. Например, функция CONCAT_WS(\',\',\'ООО “Кускус”\',\'Петров\',\'Крылов\') возвращает значение ООО «Кускус»,Петров,Крылов.
• REPEAT(\'<Строка>\',\'Количество экземпляров, не менее 1\').
Функция REPEAT(\'<Строка>\',<Количество экземпляров>) возвращает строку, в которую исходная строка входит указанное количество раз. Например, функция REPEAT(\'Трижды\',3) возвращает значение ТриждыТриждыТрижды.
• REVERSE(\'<Строка>\').
Функция REVERSE() возвращает строку, в которой символы исходной строки расположены в обратном порядке. Например, функция REVERSE(\'наоборот\') возвращает значение торобоан.
• SPACE(<Количество пробелов>).
Функция SPACE() возвращает строку, состоящую из указанного количества пробелов. Например, функция SPACE(1) возвращает значение «.».
• ELT(k,\'<Строка 1>\',\'<Строка 2>\',…, \'<Строка N>\').
Функция ELT() возвращает строку с порядковым номером k. Например, функция ELT(2,\'ООО «Кускус»\',\'Петров\',\'Крылов\') возвращает значение Петров.
• FIELD(\'<Строка-образец>\',\'<Строка 1>\',\'<Строка 2>\',…,\'<Строка N>\').
Функция FIELD() возвращает порядковый номер строки, совпадающей с образцом, и 0, если ни одна из строк 1, 2, …, N не совпадает с образцом. Например, функция FIELD(\'Петров\',\'ООО «Кускус»\',\'Петров\', \'Крылов\') возвращает значение 2.
• FIND_IN_SET(\'<Строка-образец>\',\'<Строка-контейнер>\').
Функция FIND_IN_SET() получает в качестве аргумента строку-образец (эта строка не должна содержать запятых) и строку-контейнер вида <Подстрока 1>,<Подстрока 2>,…,<Подстрока N> и возвращает порядковый номер подстроки, совпадающей с образцом, и 0, если ни одна из подстрок 1, 2, …,N не совпадает с образцом или строка-контейнер пустая. Например, функция FIND_IN_SET(\'Петров\',\'ООО «Кускус»,Петров,Крылов\') возвращает значение 2.
• EXPORT_SET(<Число>,\'<Подстрока для бита 1>\',\'<Подстрока для бита 0>\'[,\'<Разделитель>\'[,<Количество бит>]]).
Функция EXPORT_SET() преобразует число в строку, заменяя каждый бит (0 или 1) соответствующей подстрокой, и возвращает полученную строку. Биты рассматриваются в обратном порядке, то есть справа налево. При необходимости можно задать разделитель подстрок (если разделитель не задан, используется запятая), а также максимальное количество битов, которые будут обработаны (недостающие биты рассматриваются как нулевые, «лишние» биты игнорируются, а если количество битов не задано, используется значение 64). Например, функция EXPORT_SET(25,\'Да\',\'Нет\',\':\',7) возвращает значение Да:Нет:Нет:Да:Да:Нет:Нет, поскольку 25 записывается в двоичной системе счисления как 11001.
• MAKE_SET(<Число>,\'<Подстрока 0>\',\'<Подстрока 1>\',…, \'<Подстрока N>\').
Функция MAKE_SET() преобразует число в строку: подстрока с порядковым номером k добавляется в строку, если k-й бит равен 1. Биты рассматриваются в обратном порядке, то есть справа налево. Разделителем подстрок служит запятая. Например, функция MAKE_SET(6,\'Я согласен получать новости компании\',\'Я согласен участвовать в опросах\',\'Я согласен участвовать в тестировании продукта\') возвращает значение Я согласен участвовать в опросах, Я согласен участвовать в тестировании продукта, поскольку 6 записывается в двоичной системе счисления как 110.
• INSERT(\'<Строка>\',<Позиция>,<Длина подстроки>,\'<Замещающая подстрока>\').
Функция INSERT() возвращает строку, в которой подстрока, начинающаяся с указанной позиции и состоящая из указанного количества символов, заменена заданной подстрокой. Например, функция INSERT(\'ООО “Кускус”\',6,3,\'Кискис\') заменяет подстроку Кус строки ООО «Кускус» подстрокой Кискис и возвращает значение ООО «Кискискус».
• REPLACE(\'<Строка>\',\'<Замещаемая подстрока>\',\'<Замещающая подстрока>\').
Функция REPLACE() возвращает строку, в которой вместо замещаемой подстроки подставлена замещающая. Например, функция REPLACE(\'Не имей сто рублей, а имей сто друзей\',\'сто\',\'тысячу\') возвращает значение Не имей тысячу рублей, а имей тысячу друзей.
• SUBSTR(\'<Строка>\',<Позиция>[,<Длина>]), SUBSTRING(\'<Строка>\',<Позиция>[,<Длина>]), SUBSTR(\'<Строка>\' FROM <Позиция>[ FOR <Длина>]), SUBSTRING(\'<Строка>\' FROM <Позиция>[ FOR <Длина>]).
Возвращают подстроку исходной строки, начинающуюся с указанной позиции. При необходимости можно указать длину получаемой подстроки. Если номер позиции меньше 0, то позиция отсчитывается не от начала строки, а от конца.
Например:
– функция SUBSTR(\'Семь чудес света\',6) возвращает значение чудес света;
– функция SUBSTR(\'Семь чудес света\',6,5) возвращает значение чудес;
– функция SUBSTR(\'Семь чудес света\',-5) возвращает значение света.
• MID(\'<Строка>\',<Позиция>,<Длина>).
Синоним функции SUBSTRING(\'<Строка>\',<Позиция>,<Длина>).
• SUBSTRING_INDEX(\'<Строка>\',\'<Подстрока>\',<Порядковый номер вхождения>).
Если заданный порядковый номер вхождения больше 0, то функция SUBSTRING_INDEX() находит в исходной строке вхождение указанной подстроки с этим порядковым номером (считая от начала строки) и возвращает часть исходной строки, предшествующую этому вхождению. Если же заданный порядковый номер вхождения меньше 0, то вхождения отсчитываются от конца строки и возвращается часть исходной строки, которая следует за этим вхождением. Например, функция SUBSTRING_INDEX(\'Семь чудес света\',\' \',2) возвращает значение Семь чудес (подстроку, предшествующую второму пробелу), а функция SUBSTRING_INDEX(\'Семь чудес света\',\' \',-2) возвращает значение чудес света (подстроку, следующую за вторым пробелом).
• LEFT(\'<Строка>\',<Длина подстроки>).
Функция LEFT() возвращает начальную подстроку исходной строки, состоящую из указанного количества символов. Например, функция LEFT(\'Генератор\',3) возвращает значение Ген.
• RIGHT(\'<Строка>\',<Длина подстроки>).
Функция RIGHT() возвращает подстроку, состоящую из указанного количества последних символов исходной строки. Например, функция RIGHT(\'Генератор\',3) возвращает значение тор.
• LOCATE(\'<Подстрока>\',\'<Строка>\'[,<Позиция>]).
Функция LOCATE() возвращает позицию, с которой начинается первое вхождение подстроки в строку, или 0, если строка не содержит такой подстроки. При необходимости можно указать позицию в исходной строке, начиная с которой нужно искать вхождение подстроки. Например, функция
• LOCATE(\'сто\',\'Не имей сто рублей, а имей сто друзей\') возвращает значение 9, а функция LOCATE(\'сто\',\'Не имей сто рублей, а имей сто друзей\',20) возвращает значение 28. Регистр символов учитывается только в случае, если хотя бы одна из строк – байтовая (бинарная).
• INSTR(\'<Строка>\',\'<Подстрока>\'), POSITION(\'<Подстрока>\' IN\'<Строка>\').
Синонимы функции LOCATE(\'<Подстрока>\',\'<Строка>\'). Обратите внимание, что порядок аргументов у функций INSTR и LOCATE разный.
• LCASE(\'<Строка>\'), LOWER(\'<Строка>\').
Возвращают строку, приведенную к нижнему регистру. Например, функция LCASE(\'Крылов\') возвращает значение крылов.
• UCASE(\'<Строка>\'), UPPER(\'<Строка>\').
Возвращают строку, приведенную к верхнему регистру. Например, функция UCASE(\'Крылов\') возвращает значение КРЫЛОВ.
• LOAD_FILE(\'<Путь и имя файла>\').
Функция LOAD_FILE() получает в качестве аргумента полный путь и имя файла, расположенного на компьютере, где работает сервер MySQL, и возвращает в виде строки данные, содержащиеся в этом файле. В пути к файлу необходимо использовать прямую косую черту вместо принятой в Windows обратной косой черты.
• LPAD(\'<Строка>\',<Длина>,\'<Символы заполнения>\').
Функция LPAD() возвращает строку указанной длины, полученную из исходной строки путем добавления символов заполнения в начале строки (в случае если количество символов в исходной строке меньше указанного) или отбрасывания «лишних» символов (в случае если количество символов в исходной строке больше указанного). Например, функция LPAD(\'Крылов\',9,\'+-\') возвращает значение +–+Крылов, а функция LPAD(\'ООО “Кускус”\',9,\'+-\') возвращает значение ООО «Куск.
• RPAD(\'<Строка>\',<Длина>,\'<Символы заполнения>\').
Функция RPAD() аналогична функции LPAD(), только символы заполнения добавляются в конце строки. Например, функция RPAD(\'Крылов\',9,\'+-\') возвращает значение Крылов+–+, а функция RPAD(\'ООО “Кускус”\',9,\'+-\') возвращает значение ООО «Куск.
• LTRIM(\'<Строка>\').
Функция LTRIM() возвращает строку, полученную из исходной путем удаления начальных пробелов. Например, функция LTRIM(\' Крылов \') возвращает значение Крылов .
• RTRIM(\'<Строка>\').
Функция RTRIM() возвращает строку, полученную из исходной путем удаления пробелов в конце строки. Например, функция RTRIM(\' Крылов \') возвращает значение Крылов.
• TRIM([[LEADING, TRAILING или BOTH] [\'<Символы заполнения>\']FROM ]\'<Строка>\').
Функция TRIM(\'<Строка>\') возвращает строку, полученную из исходной путем удаления начальных пробелов и пробелов в конце строки. Если необходимо удалить другой символ или последовательность символов, их нужно указать в параметре <Символы заполнения>. Если требуется удалить символы заполнения только в начале строки, укажем параметр LEADING, если только в конце – параметр TRAILING. Например, функция TRIM(\'+-\' FROM \'+-+Крылов-+-+-\') возвращает значение +Крылов–.