Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Экзамен БДиСУБД.doc
Скачиваний:
17
Добавлен:
25.11.2018
Размер:
583.17 Кб
Скачать

16. Опишите функции преобразования символов в строке (lower, upper, initcap), строковые функции (lpad, ltrim, substr, instr, length и др.), функции работы с числами. Приведите примеры.

Функции преобразования символов в строке:

    • LOWER (<строка>) - выполняет преобразование прописных букв в строчные (нижний регистр).

    • UPPER (<строка>) - выполняет преобразование строчных букв в прописные (верхний регистр).

    • INITCAP (<строка>)— перевод первой буквы каждого слова строки в прописную (заглавную).

Например: SELECT UPPER (Ф_Дир), INITCAP (Назв_Фирмы), LOWER (Адрес)

Ф_Дир

Назв_Фирмы

Адрес

ФОДЕЕВ

Сад И Огород

г.пинск, ленина 45

ВОЛКОВА

Сахарный Завод

г.жабинка, савецкая 3

FROM Поставщики;

Результат запроса будет выглядеть следующим образом:

Строковые функции:

LPAD (RPAD) (<строка>,<длина>[,<подстрока>]) — дополнение строки слева (справа)

    • <строка> дополняется слева (справа) заданной в <подстроке> последовательностью символов до указанной <длины> (возможно, с повторением последовательности);

    • если <подстрока> не указана, то по умолчанию <строка> дополняется пробелами;

    • если <длина> меньше длины <строки>, то исходная <строка> усекается слева (справа) до заданной <длины>.

LTRIM (RTRIM) (<строка>[,<подстрока>])— удаление левых (правых) граничных символов

    • из <строки> удаляются слева (справа) символы, указанные в <подстроке>;

    • если < подстрока > не указана, по умолчанию удаляются пробелы;

    • в <строку> справа (слева) добавляется столько пробелов, сколько символов слева (справа) было удалено, то есть длина <строки> остается неизменной.

SUBSTR(<строка>,<начало>[,<количество>]) — выделение подстроки из строки символов

    • из <строки> выбирается заданное <количество> символов, начиная с указанной параметром <начало> позиции в строке;

    • если <количество> не задано, символы выбираются с <начала> и до конца <строки>;

    • если указанное <начало> превосходит длину <строки>, то возвращается строка, состоящая из пробелов.

INSTR(<строка>,<подстрока>[,<начало поиска> [,<номер вхождения>]]) — определяет позицию размещения подстроки в другой строке. <Начало поиска> задает начальную позицию в строке для поиска <подстроки>. Если не задано, то по умолчанию принимается значение 1; <номер вхождения> задает порядковый номер искомой подстроки. Если не задан, то по умолчанию принимается значение 1.

LENGTH(<строка>) — вычисляет длину строки.

Например:

SELECT RPAD(Ф_Дир,10,’?!’) AS Ф_Д, Назв_Фирмы, LENGTH(Назв_Фирмы) AS Длина, SUBSTR(Адрес,12) AS А

FROM Поставщики;

Ф_Д

Назв_Фирмы

Длина

А

Фодеев?!?!

Сад и огород

12

нина 45

Волкова?!?

Сахарный завод

14

Савецкая 3

Результат запроса будет выглядеть следующим образом:

Функции работы с числами:

POWER (число, n) - возводит число в n-ную степень;

ROUND (число[,n]) - округляет число до n знаков справа от десятичной точки;

TRUNC (число[,n]) - усекает число до n знаков справа от десятичной точки;

ABS (число) - получает абсолютное значение числа;

SIGN (число) - принимает значение +1, если число больше нуля, 0, если число равно нулю и -1, если число меньше нуля;

SQRT (число) - вычисляет положительный квадратный корень числа. Если число меньше нуля, тогда результат - пустое значение (NULL);

Тригонометрические функции — COS(число), SIN(число), TAN(число)

Экспоненциальная функция — ЕХР (число)

Логарифмические функции — LN(число), LOG числовое выражение>).

Например: SELECT Рост, ROUND(Рост,1) AS Р_окр, TRUNC(Рост,1) AS Р_урез, Возр, POWER(Возр,2) AS Года

FROM Дети;

Рост

Р_окр

Р_урез

Возр

Года

1,17

1,2

1,1

6

36

1,12

1,1

1,1

6

36

1,39

1,4

1,3

9

81

В результате получим

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]