Skip to main content

Встроенные функции и условная логика

Встроенные функции

Строки:

экранирование: дополнителная кавычка '' или \'
quote() +кавычки при выборке текста: 

SELECT quote(text_fId) FROM string_tbl; -> 'This string didn\'t work, but it does now'

char() берет номера, и объединяет в строку 

char(97,98,99) -> abc

concat() (+ в MS SQL) объединяет строки 

UPDATE string_tbl SET text_fld = CONCAT(text_fld, 'but now it is longer');
select concat(first_name, ' ', last_name, ' has been customer since ', date(create_date)) narrative from customer;

length() длина строки
position начало подстроки SELECT POSITION('characters' IN vchar_fld) FROM string_tbl; Первый с 1. 0 если не найдено.
locate как position, но 3 аргумент - старт поиска
insert вставка
replace заменяет
substring находит подстроку
объединение данных из группировки в столбец 

SELECT id, GROUP_CONCAT(data) FROM yourtable GROUP BY id 

Числа:

ceil(), floor()округление в большую или меньшую сторону к ближайшему целому числу
round() десятичная часть >=0,5 округлено в большую сторону и наоборот ROUND(72.0909,3) - 3 знака оставить
TRUNCATE(72.0909, 1) - простое усечение, оставит 72.0
аргумент может быть <0 TRUNCATE(17, -1) = 10, round(17, -1) = 20
sign() знак числа
abs() абсолютное значение