Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SUBD.doc
Скачиваний:
1
Добавлен:
02.09.2019
Размер:
86.53 Кб
Скачать

13. Опишите задание условий в разделе [Where] запроса.

> больше;

>=, !< больше или равно;

< меньше;

<=, !> меньше или равно

Ключ поиска для текстовых полей берется в одинарные кавычки, для полей типа дата/время берется в кавычки и записывается в виде ‘ММ/ДД/ГГ’

Пример. Вывести список сотрудников, у которых фамилия начинается на А

SELECT * FROM SOTRUDNIKI WHERE FAM LIKE ‘A%’

14. Опишите принципы выполнения вычислений в запросах.

При создании запроса в списке полей могут указываться формулы. Формула может содержать знаки операций (+, -, *, /), числа, скобки и имена др. полей.

По умолчанию такое вычисляемое поле будет безымянным, поэтому для него нужно явно указывать имя.

В языке SQL имеются спец. функции позволяющие получать общие показатели по таблице

COUNT (*) – число строк

SUM (ПОЛЕ) – сумма

AVG (ПОЛЕ) – среднее

MIN(ПОЛЕ) – минимальное

MAX (ПОЛЕ) – максимальное

Пример. Пусть имеются данные о товаре: название и цена в у.е. Вывести название, цену в у.е., цену в гривнах, цену в гривнах с НДС. Отобразить данные тех записей, у которых цена в у.е. >100

SELECT NAZV AS [НАИМЕНОВАНИЕ ТОВАРА], CENA AS [ЦЕНА В У.Е], CENA*5.05 AS [ЦЕНА В ГРН], CENA*5.05 +CENA*5.05*0.2 AS [ЦЕНА В ГРН С НДС] FROM TOVARY WHERE CENA >100

15. Опишите принципы группировки и сортировки данных в запросах. Примеры

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

Группировка данных может выполняться по полям, которые содержат повторяющиеся значения. Для группировки в конце запроса добавляют параметр:

GROUP BY СПИСОК_ПОЛЕЙ

При группировке если в списке полей кроме формул имеются обычные поля таблицы, то все они через запятую должны быть указаны в разделе GROUP BY.

Пример: Определить максимальный, минимальный и средний оклад для мужчин и женщин на предприятии.

SELECT POL, MAX(OKLAD), MIN(OKLAD), AVG(OKLAD) FROM SOTRUDNIKI GROUP BY POL

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

Пример: Определить средний оклад по каждому отделу на предприятии.

SELECT OTDEL, AVG(OKLAD) FROM SOTRUDNIKI GROUP BY OTDEL

16. Приведите команду запроса для вставки в таблицу новой записи.

Все строки в SQL вводятся с использованием команды модификации INSERT. В самой простой форме, INSERT использует следующий синтаксис:

INSERT INTO ИМЯ_ТАБЛИЦЫ

VALUES ( ЗНАЧЕНИЕ1, ЗНАЧЕНИЕ2, …, ЗНАЧЕНИЕN)

Имя таблицы должно быть предварительно определено, а каждое значение в списке значений, должно совпадать с типом данных столбца, в который оно вставляется. Значения, конечно же, вводятся в таблицу в поименном порядке, поэтому первое значение с именем, автоматически попадает в столбец 1, второе в столбец 2, и так далее.

Пример. В таблицу Sotrudniki, имеющую поля Табельный номер, Фамилия, Имя, Отчество, Дата рождения, Пол, Оклад добавить новую запись.

INSERT INTO SOTRUDNIKI

VALUES (126, ‘ФРОЛОВ’, ‘ЕВГЕНИЙ’, ‘МИХАЙЛОВИЧ’, ‘06/15/1968’, ‘М’, 1580)

17. Приведите команду запроса на обновления данных в полях таблицы.

Для изменения данных в строке таблицы используется команда

UPDATE ИМЯ_ТАБЛИЦЫ

SET ПОЛЕ1=ЗНАЧЕНИЕ1, ПОЛЕ2=ЗНАЧЕНИЕ2, …, ПОЛЕN=ЗНАЧЕНИЕN

[WHERE УСЛОВИЕ]

Пример. На предприятии все оклады увеличились на 20 %. Обновите данные в таблице.

UPDATE SOTRUDNIKI

SET OKLAD=OKLAD+OKLAD*0.2

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