Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовой_проект_УД_.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
735 Кб
Скачать
☆

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 – создает выборку, состоящую из одной строки и трех полей, содержащих минимальное значение цены, максимальное значение цены и её среднее значение.

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