В рамках данной статьи мы рассмотрим функции для работы со строками:
ASCII — возвращает ASCII код левой буквы. Ее можно использовать для того, чтобы вывести количество различных символов с которых начинаются имена студентов.
1
|
SELECT COUNT(DISTINCT ASCII(Name)) FROM Student
|
CHAR — обратная к ASCII функция, возвращает символ по его номеру. Поэтому с помощью нее можно вывести эти различные буквы:
1
|
SELECT DISTINCT CHAR(ASCII(Name)) FROM Student
|
LEFT — позволяет вернуть n первых символов. Так что приведенную ниже задачу можно было решить так:
1
|
SELECT LEFT(Name, 1) FROM Student
|
RIGHT — позволяет вернуть n последних символов. Является парной к LEFT.
CHARINDEX — позволяет выполнить поиск подстроки в строке. Возвращает позицию первого вхождения.
1
|
CHARINDEX( подстрока, строка, [индекс])
|
Необязательный параметр индекс обозначает с какой позиции необходимо вести поиск подстроки.
PAINTINDEX — возвращает тоже, что и CHARINDEX, но позволяет использовать в качестве подстроки шаблон.
1
|
PAINTINDEX( шаблон , строка)
|
Выведем всех студентов, имя у которых начинается на ‘A’. Напомним что в шаблоне разрешается использование специальных символов ‘_'(любой символ), ‘%’ (последовательность символов). Шаблон должен быть обернут %.
1
|
SELECT * FROM Student WHERE PAINTINDEX( '%A%%' , Name) > 0
|
LEN — возвращает число символов в строке.
SUBSTRING — возвращает подстроку, которая начинается с начальной_позиции.
1
|
SUBSTRING(строка, начальная_позиция, длина_подстроки)
|
REVERSE — переворачивает строку.
REPLACE — заменяет все вхождения подстроки_1 в строке на подстроку_2.
1
|
REPLACE(строка, подстрока_1, подстрока_2)
|
STUFF — заменяет n символов в строке на подстроку начиная с начальной_позиции.
1
|
STUFF(строка, начальная_позиция, n, подстрока)
|
LTRIM — возвращает строку без лидирующих пробелов.
RTRIM — возвращает строку без конечных пробелов.
1
2
|
LTRIM(строка)
RTRIM(строка)
|
LOWER — опускает все символы строки в нижний регистр.
UPPER — опускает все символы строки в нижний регистр.
1
2
|
LOWER(строка)
UPPER(строка)
|
UNICODE — возвращает код первого символа в строке.
NCHAR — возвращает символ по коду.
1
2
|
UNICODE(строка)
NCHAR(код)
|
|