Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методическое пособие 241

.pdf
Скачиваний:
4
Добавлен:
30.04.2022
Размер:
675.96 Кб
Скачать

UNION – последовательно объединяются все записи из указанных запросов.

UNION ALL – последовательно объединяются только уникальные записи из указанных запросов.

Вставка данных (операция INSERT)

INSERT [INTO]

{таблица} [(список_полей)] {список_значений | выборка}

Добавляет одну или несколько (в случае выборки) записей в указанную таблицу с указанными значениями в указанные поля.

Изменение данных (операция UPDATE)

UPDATE {таблица}

SET {поле1= значение1 [… , полеN=значениеN]} [WHERE условие_отбора]

Изменяет в указанной таблице указанные поля на указанные значения для записей, удовлетворяющих условию отбора.

Удаление данных (операция DELETE, TRUNCATE)

DELETE [FROM] { таблица } [WHERE условие_отбора]

Удаляет из указанной таблицы записи, удовлетворяющие условию отбора.

TRUNCATE TABLE { таблица }

Удаляет из указанной таблицы все записи.

1.5. Встроенные функции Transact-SQL

Конвертация

CAST ( expression AS data_type [ ( length ) ] ) CONVERT ( data_type [ ( length ) ], expression [ style ] )

Преобразует выражение одного типа данных в другой.

expression – Любое допустимое выражение. data_type – Целевой тип данных.

9

Length – Целое число, обозначающее длину целевого типа данных. Значение по умолчанию равно 30.

style – Целочисленное выражение, определяющее, как функция CONVERT преобразует параметр expression.

Математические

ABS ( numeric_expression ) – Математическая функция, возвращающая абсолютное (положительное) значение указанного числового выражения.

ACOS ( float_expression ) – Математическая функ-

ция, возвращающая угол в радианах, чей косинус является указанным выражением.

ASIN ( float_expression ) – Возвращает угол в ра-

дианах, синус которого был задан как выражение типа float. ATAN ( float_expression ) – Возвращает угол в

радианах, тангенс которого задан выражением.

CEILING ( numeric_expression ) – Возвращает наименьшее целое число, которое больше или равно данному числовому выражению.

COS ( float_expression ) – Математическая функция,

возвращающая тригонометрический косинус указанного угла в радианах в указанном выражении.

COT ( float_expression ) – Математическая функция,

возвращающая тригонометрический котангенс заданного угла в радианах в заданном выражении float.

EXP ( float_expression ) – Возвращает значение экспоненты заданного выражения типа float.

FLOOR ( numeric_expression ) – Возвращает наи-

большее целое число, меньшее или равное указанному числовому выражению.

LOG ( float_expression [, base ] ) – Возвращает натуральный логарифм данного выражения типа float.

float_expression – Выражение, имеющее тип float или тип, который неявно может быть преобразован в float.

base – Необязательный целочисленный аргумент,

10

который определяет основу для логарифма.

PI ( ) – Возвращает постоянное значение PI.

POWER ( float_expression , y ) – Возвращает значение указанного выражения, возведенное в заданную степень.

float_expression – Выражение, имеющее тип float или тип, который может быть неявно преобразован в float.

y – Степень, в которую возводится аргумент float_expression. y может быть выражением категории точного или приблизительного числового типа данных, за исключением типа данных bit.

RAND ( [ seed ] ) – Возвращает псевдослучайное значение типа float от 0 до 1.

ROUND ( numeric_expression , length [ ,function ] ) –

Возвращает числовое значение, округленное до указанной длины или точности.

numeric_expression – Выражение.

length – Точность, с которой должно быть округлено значение выражения numeric_expression. Когда аргумент length является положительным числом, numeric_expression округляется до числа десятичных разрядов, указанных в аргументе length. Когда length является отрицательным числом, numeric_expression округляется слева от точки, отделяющей десятичную дробь от целого числа, как указано в length.

function – Тип выполняемой операции. Когда аргумент function опускается или имеет значение 0 (значение по умолчанию), аргумент numeric_expression округляется. Когда указывается значение, не равное 0, numeric_expression усекается.

SIN ( float_expression ) – Возвращает значение тригонометрического синуса указанного угла в радианах и приблизительное числовое выражение типа float.

SQRT ( float_expression ) – Возвращает квадратный 11

корень данного числа с плавающей точкой.

TAN ( float_expression ) – Возвращает тангенс входного аргумента.

Логические

CHOOSE ( index, val_1, val_2 [, val_n ] ) – Возвра-

щает элемент по указанному индексу из списка значений. index – отсчитываемый от 1 индекс в списке эле-

ментов, следующих за ним.

val_1 … val_n – Список значений.

IIF ( boolean_expression, true_value, false_value ) –

возвращает одно из двух значений в зависимости от того, имеет логическое выражение значение true или false.

FORMAT ( value, format [, culture ] ) – Возвращает значение, указанное в формате, языке и региональных параметрах (необязательно).

value – Выражение для форматирования. format – Шаблон формата nvarchar.

culture – Дополнительный аргумент nvarchar, обозначающий язык и региональные параметры.

LEFT ( character_expression , integer_expression ) –

Возвращает указанное число символов символьного выражения слева.

character_expression – Выражение символьных или двоичных данных. character_expression может быть константой, переменной или столбцом.

integer_expression – Положительное целое число, указывающее, сколько символов character_expression будет возвращено.

LEN ( string_expression ) – Возвращает количество символов указанного строкового выражения, исключая конечные пробелы.

LOWER ( character_expression ) – Возвращает символьное выражение после преобразования символьных данных верхнего регистра в символьные данные нижнего

12

регистра.

LTRIM ( character_expression ) – Возвращает сим-

вольное выражение после удаления начальных пробелов.

REPLACE ( string_expression , string_pattern , string_replacement ) – Заменяет все вхождения указанного строкового значения другим строковым значением.

string_expression – Строковое выражение, в котором выполняется поиск.

string_pattern – Подстрока для поиска. string_replacement – Строка замещения.

RIGHT ( character_expression , integer_expression ) –

Возвращает указанное число символов символьной строки справа.

character_expression – Выражение символьных или двоичных данных.

integer_expression – Положительное целое число, указывающее, сколько символов character_expression будет возвращено.

RTRIM ( character_expression ) – Возвращает строковое выражение, удаляя все завершающие пробелы.

SUBSTRING ( expression ,start , length ) – Возвра-

щает часть символьного, двоичного, текстового или графического выражения.

expression – строка.

start – Целое число или выражение типа bigint, указывающее начальную позицию возвращаемых символов.

length – Положительное целое число или выражение типа bigint, указывающее количество символов выражения expression, которое будет возвращено.

UPPER ( character_expression ) – Возвращает символьное выражение, в котором символы нижнего регистра преобразованы в символы верхнего регистра.

Даты

SYSDATETIME () – Возвращает значение типа

13

datetime2(7), которое содержит дату и время компьютера, на котором запущен экземпляр SQL Server.

SYSDATETIMEOFFSET () – Возвращает значение типа datetimeoffset(7), которое содержит дату и время компьютера, на котором запущен экземпляр SQL Server.

SYSUTCDATETIME ( ) – Возвращает значение типа datetime2(7), которое содержит дату и время компьютера, на котором запущен экземпляр SQL Server.

DATEPART ( datepart , date )

Возвращает целое число, представляющее указанный компонент datepart указанной даты date.

datepart – Отображаемая часть переменной date. В следующей таблице перечислены все допустимые аргументы datepart.

datepart

Сокращения

 

 

Year

yy, yyyy

 

 

Quarter

qq, q

 

 

Month

mm, m

 

 

Dayofyear

dy, y

 

 

Day

dd, d

 

 

Week

wk, ww

 

 

Weekday

dw, w

 

 

Hour

hh

 

 

Minute

mi, n

 

 

Second

ss, s

 

 

Millisecond

ms

 

 

Microsecond

mcs

 

 

Nanosecond

ns

 

 

date – дата.

DATEFROMPARTS (year, month, day) – Возвращает дату, полученную из указанных частей.

14

year – год.

month – Целочисленное выражение от 1 до 12, задающее месяц.

day – Целочисленное выражение, задающее день.

DATETIME2FROMPARTS ( year, month, day, hour, minute, seconds, fractions, precision ) – Возвращает дату,

полученную из указанных частей.

year – Целочисленное выражение, задающее год. month – Целочисленное выражение, задающее месяц. day – Целочисленное выражение, задающее день. hour – Целочисленное выражение, задающее часы. minute – Целочисленное выражение, задающее минуты. seconds – Целочисленное выражение, задающее секунды. fractions – Целочисленное выражение, задающее

доли секунд.

precision – Целочисленное литеральное значение, определяющее точность возвращаемого значения datetime2.

DATETIMEFROMPARTS (year, month, day, hour, minute, seconds, milliseconds) – Возвращает дату,

полученную из указанных частей.

year – Целочисленное выражение, задающее год. month – Целочисленное выражение, задающее месяц. day – Целочисленное выражение, задающее день. hour – Целочисленное выражение, задающее часы. minute – Целочисленное выражение, задающее минуты. seconds – Целочисленное выражение, задающее

секунды.

milliseconds – Целочисленное выражение, задающее миллисекунды.

DATEDIFF (datepart, startdate, enddate) – Возвращает количество пересеченных границ (целое число со знаком), указанных аргументом datepart, за период времени, указанный аргументами startdate и enddate.

15

datepart – Часть аргументов startdate и enddate,

которая задает тип пересекаемых границ. startdate – начальная дата.

enddate – конечная дата.

DATEADD (datepart, number, date) – Возвращает дату, полученную как сумму исходной даты date и интервала number (целое число со знаком), добавленного к заданному компоненту datepart даты date.

datepart – Компонент даты date, к которому добавляется интервал integernumber.

number – Выражение, которое добавляется к компо-

ненту datepart даты date. date – дата.

EOMONTH (start_date [, month_to_add]) – Возвра-

щает последний день месяца, содержащего указанную дату, с необязательным смещением.

start_date – Выражение даты, задающее дату, для которой необходимо возвратить последний день месяца.

month_to_add – Необязательное целочисленное выражение, задающее количество месяцев, добавляемых к параметру start_date.

1.6. Язык определения данных

Создание таблицы

CREATE TABLE { таблица } ({поле1

свойства_поля1 [ограничение1 [ограничение2 [...ограничениеN]]]}

[[,]{полеN свойства_поляN [ограничение1 [ограничение2 [...ограничениеN]]]}...])

Создает указанную таблицу с указанными полями и ограничениями.

Свойства_поля = Тип_данных [NULL | NOT NULL | IDENTITY[(seed, increment)]]

Тип_данных – опрелеляет тип создаваемого поля.

16

IDENTITY[(seed, increment)] - для поля с таким свойством сервером автоматически генерируется возрастающая последовательность, начиная с seed и приращением increment.

Ограничение – ограничение как для поля следующих видов:

Первичный ключ:

[CONSTRAINT имя_ограничения] PRIMARY KEY

(поле1 [, поле2 [..., поле16]])

Ограничение уникальности:

[CONSTRAINT имя_ограничения] UNIQUE (поле1 [, поле2 [..., поле16]])

Создает ограничение, разрешающее только уникальные записи.

Вторичный ключ:

[CONSTRAINT имя_ограничения] FOREIGN KEY

(поле1 [, поле2 [..., поле16]]) REFERENCES

главная_таблица (поле1 [, поле2 [..., поле16]])

Создает вторичный ключ и связывает указанное поле с первичным ключом указанной таблицы.

Значение по умолчанию:

[CONSTRAINT имя_ограничения] DEFAULT

{выражение } [FOR поле]

Создает значение по умолчанию равное указанному выражению для указанного поля.

Ограничение проверки:

[CONSTRAINT имя_ограничения] CHECK

(выражение)

Создает ограничение проверки, не позволяющее значений, не удовлетворяющих указанному выражению.

Изменение таблицы

ALTER TABLE { таблица } ADD {поле1

свойства_поля1

[ограничение1

[ограничение2

 

17

 

[...ограничениеN]]]} [[,]{полеN свойства_поляN [ограничение1 [ограничение2 [...ограничениеN]]]}...] | DROP [CONSTRAINT] ограничение1 [ограничение2 [...ограничениеN]]]

Изменяет указанную таблицу, добавляя в нее указанные поля или ограничения или удаляя ограничения.

Удаление таблицы

DROP TABLE таблица Удаляет указанную таблицу.

Удаление ограничения

DROP имя

Удаляет ограничение по его имени.

Создание представления

CREATE VIEW имя_представления [(поле1 [,

поле2]...)]

AS SELECT …

Создает виртуальную таблицу (представление), воспроизводящую данные из указанной выборки.

2. Работа с данными средствами языка Transact-SQL (4 ч)

2.1. Требуемые ресурсы и инструменты

Установленный программный продукт Microsoft SQL ServerExpress. Созданная ранее и заполненная БД по предметной области 1 раздела 6.

2.2.Порядок действий

1.Соединится с сервером БД, содержащим базу с именем learn_db.

2.В панели инструментов нажать на кнопку «New Query» (1) - появится окно текстового редактора (2) для работы с SQL-запросами (Рис. 1).

18