- •Рецензенты:
- •Введение
- •Содержание
- •1. Цель, задачи и реализуемые компетенции
- •2. Формулировка задания
- •3.2 Теоретическая часть курсового проекта
- •3.3 Практическая часть курсового проекта
- •3.3.1 Обследование предметной области
- •3. Структура работы
- •1. Теоретическая часть
- •2. Практическая часть
- •3.1 Введение к курсовому проекту
- •3.3.2 Разработка технического задания
- •3.3.3 Концептуальное проектирование
- •3.3.4 Инфологическое проектирование
- •3.3.5 Реляционная модель бд
- •3.3.6 Даталогическая модель бд
- •3.3.7 Запросы к базе данных
- •3.3.8 Разработка механизмов защиты данных от несанкционированного доступа
- •3.3.9 Требования к техническому обеспечению
- •3.3.10 Инструкция по использованию базы данных
- •3.3.11 Заключение
- •3.3.12 Список используемой литературы
- •3.3.13 Приложения
- •4. Общие требования к написанию и оформлению проекта
- •4.1 Оформление пояснительной записки
- •5. Последовательность выполнения задания
- •6. Критерии оценивания Проекта
- •7. Порядок защиты проекта
- •Список рекомендуемой литературы
- •Internet-ресурсы
- •Приложение 1
- •Направление (специальность) _______________________________________
- •Задание на курсовую работу (проект)
- •Приложение 2
- •Курсовой проект
- •Приложение 3
- •1 Безусловная выборка значений
- •2 Простая выборка
- •3 Выборка уникальных значений
- •4 Выборка вычисляемых значений
- •5 Выборка с условием
- •6 Выборка с упорядочением
- •7 Выборка с использованием оператора between
- •8 Выборка с использованием оператора in (принадлежит)
- •9 Выборка с использованием шаблонов
- •Имя поля like строковая константа
- •10 Выборка из связанных таблиц
- •Простое соединение
- •Соединение с дополнительным условием
- •Соединение трех таблиц
- •11 Использование группировки данных при организации запросов
- •Использование группировки данных совместно с условием
- •Использование having
- •12 Использование квантора существования в запросах
- •13 Объединение множеств
- •Субд ms Visual FoxPro
- •14 Модификация данных в таблицах
- •15 Удаление данных
- •16 Добавление записей
- •Insert into таблица [(поле [,поле] ...)] values (константа [,константа]...)
- •Insert into таблица [(поле [,поле] ...)] подзапрос
- •17 Запросы по дате
- •18. Соединение отношений. Оператор join
- •19. Коррелированные и некоррелированные подзапросы
- •20. Вычисления в таблицах. Команда calculate
3 Выборка уникальных значений
Чтобы исключить дубликаты строк из результата выборки используется ключевое слово DISTINCT. Примером запроса, исключающего дублирование записей, является
SELECT DISTINCT kod FROM R1
4 Выборка вычисляемых значений
При выполнении запросов в СУБД Visual FoxPro может осуществляться не только выбор из таблицы ранее введенных значений, но и получение данных, отсутствующих в исходной таблице. Для выборки вычисляемых значений в Visual FoxPro имеются встроенные функции и арифметические операторы. При организации выборки информации вычисления могут производится по одному или нескольким полям исходной таблицы.
Чтобы включить в запрос функцию поля или выражение, необходимо:
1) в окне конструктора запросов активизировать вкладку Fields;
2) с помощью манипулятора «мышь» или клавиши Tab перейти в поле «Functions and expressions»
3) в этом поле ввести выражение для вычисления или нажать кнопку вызова построителя выражения, расположенную с правой стороны поля,
4) в окне диалога Expression Builder создать выражение для вычисляемого поля.
5) нажать кнопку Add для переноса данного выражения в список выходных полей запроса.
Пример 4.1. Пусть в некоторой базе данных содержится таблица Товары, в которой цена (UNITPRICE) указана без учёта налога на добавленную стоимость (НДС). Поля таблицы Товары представлены в таблице 4.1. Тип переменной UNITPRICE – Currency.
Таблица 4.1 – Поля таблицы Товары
-
Kod1
UNITPRICE
1
1000.0000
2
2000.0000
3
10000.0000
Необходимо организовать выборку информации из таблицы Товары, указав цены с учетом налога на добавленную стоимость (18%).
SQL-запрос, соответствующий примеру 4.1:
SELECT Kod1, UNITPRICE * (1 + 0,18) AS ЦЕНА FROM Товары
Результат выполнения данного запроса представлен в таблице 4.2.
Таблица 4.2 – Результат выборки из таблицы Товары
-
Kod1
ЦЕНА
1
1180.0000
2
2360.0000
3
11800.0000
В запросе после ключевого слова AS записано новое название столбца таблицы.
Применение конструкции SELECT в формировании запросов с вычисляемыми полями позволяет использовать в них не только арифметические выражения, но и простые имена полей. Кроме того, в результаты выборки можно добавить константы.
Если в SQL-запрос, соответствующий примеру 1, добавить строку «Цена указана с учетом НДС», то он примет вид:
SELECT Kod1, UNITPRICE * (1 + 0,18) AS ЦЕНА, «Цена указана с учетом НДС» FROM Товары
Результат выполнения данного запроса представлен в таблице 3.
Таблица 4.3 – Результат выполнения запроса
-
Kod1
ЦЕНА
Цена указана с учетом НДС
1
1180.0000
Цена указана с учетом НДС
2
2360.0000
Цена указана с учетом НДС
3
11800.0000
Цена указана с учетом НДС
При выборке с помощью команды SELECT можно использовать агрегатные функции:
1) MIN(X) – вычисляет минимальное значение из множества X;
2) MAX(X) – вычисляет максимальное значение из множества X;
3) AVG(X) – вычисляет среднее арифметическое из множества значений X;
4) SUM(X) – вычисляет сумму значений множества X;
5) COUNT(X) – определяет число элементов множества X.
Примеры использования этих функций:
1) SELECT COUNT(*) FROM GOODS – создает выборку, состоящую из одной строки и одного поля, содержащего количество всех строк таблицы GOODS (товары);
2) SELECT MAX(Цена), MIN(Цена), AVG(Цена) FROM GOODS – создает выборку, состоящую из одной строки и трех полей, содержащих минимальное значение цены, максимальное значение цены и её среднее значение.
