Выборка вычисляемых значении
Стр 1 из 3Следующая ⇒ Расширенные SQL-запросы. Безусловная выборка значений Вводить SQL-запросы можно непосредственно в командном окне (Command window) или в Query Designer. Для формирования запросов на языке SQL используется конструкция SELECT. Результатом выполнения запроса является таблица, которая хранится во временном буфере сервера базы данных. Выбранные данные можно использовать для просмотра, формирования графиков, печати отчетов или добавить в них постоянные таблицы базы данных. Длина строки на языке SQL, до 255 символов, регистр не имеет значения. Синтаксис команды SELECT
SELECT [ALL | DISTINCT] список выбираемых полей FROM список таблиц [WHERE условие выборки или соединения] [GROUP BY список полей по условию группировки [HAVING условие выборки группы]] [ORDER BY список полей, по которым упорядочить вывод]
При формировании запросов можно использовать уточненные имена полей (например, CUSTOMER.CIJSTOMERNO, т.е. Имя_таблицы.Имя_поля) Ключевое слово ALL подразумевается по умолчанию. Для выборки всех полей таблицы, в том же порядке, что и в таблице используется следующая форма запроса: SELECT*FROM таблица.
Запрос вида SELECT*FROM R1,R2 соответствует декартову произведению таблиц R1 и R2, т. е R = R1 xR2.
Запрос, представляемый в виде SELECT Rl.A, R2.B FROM R1,R2 соответствует проекции декартова произведения таблиц Rl и R, на столбцы А из таблицы R1 и В - из таблицы R2, то есть R = πR1,А,R2,B (R1 x R2). Простая выборка При использовании механизма простой выборки предполагается, что в результате ее выполнения на экран будет выведен некоторый диапазон значений. Например, результатом выполнения запроса SELECT STOCK FROM ORDSALE
является столбец STOCK из таблицы ORDSALE (таблица 1). Таблица 1 - Результат выполнения простой выборки
При выполнении данного запроса в результат выборки будут включены все дубликаты товаров. Выборка уникальных значений Реляционная СУБД не исключает дубликатов из результата конструкции SELECT, если пользователь не потребует это сделать с помощью ключевого слова DISTINCT. Примером запроса, исключающего дублированиезаписей, является
SELECT DISTINCT STOCK FROM ORDSALE
Результат его выполнения представлен в таблице 2. Таблица 2 - Результат выполнения запроса с использованием функции DISTINCT
Выборка вычисляемых значении При выполнении запросов в СУБД Visual FoxPro осуществляется не только выбор из таблицы определенных значений, но и получение данных, отсутствующих в исходной таблице, то есть выполнение определенных вычислений (финансовых, статистических и др. функций) и отражение их результатов в результирующей таблице. При организации такого рода выборкиинформации вычисления могут производиться по одному или нескольким „полям исходной таблицы. Результирующая таблица содержит не только значения полей исходной таблицы или исходных таблиц, но и результат вычислений над полями. В выражениях могут быть использованы арифметические операторы и функции. Перечень допустимых функций определяется используемым диалектом языка SQL. При переносе приложений с одного сервера на другой наиболее узким местом являются встроенные функции. Пример 1. Пусть в некоторой базе данных содержится таблица GOODS (товары),в которой цена па определенный товар не учитывает налог на добавленнуюстоимость (НДС). Используя язык SQL. организовать выборку информации из таблицы GOODS (товары): выбрать все товары и их цены с учетом налога на добавленную стоимость. SQL-запрос, соответствующий примеру 1:
SELECT STOCK, UNITPRICE * (1 + 0,18) FROM GOODS
Результат выполнения данного запроса представлен в таблице 3.
Таблица 3 — Результат выборки информации из таблицы GOODS
Применение конструкция SELECT в формировании запросов с вычисляемыми полями позволяет использовать в них не только арифметические выражения, но и простые имена полей. Кроме того, в результаты выборки можно добавить константы. Если в SQL-запрос, соответствующий примеру 1, добавить строку «Стоимость с учетом НДС», то он примет вид: SELECT STOCK, «Стоимость с учетом НДС», UNITPRICE*(1+0,18) FROM GOODS
Результат выполнения данного запроса представлен в таблице 4. Таблица 4 - Результат выполнения запроса
При выборке с помощью команды SELECT можно использовать статистические функции: 1) MIN(X) - вычисляет минимальное значение из множества X; 2) МАХ(Х) - вычисляет максимальное значение из множества X. 3) AVG(X) - вычисляет среднее арифметическое значение из множества X; 4) SUM(X) - вычисляет сумму значений множества X: 5)COUNT(X) - определяет число элементов множества X. 1) SELECT COUNT(*) FROM GOODS - создает выборку, состоящую из одной строки и одного поля, содержащего количество всех строк таблицы GOODS (товары); 2) SELECT MAX(UNITPRICE), MIN(UNITPRICE), AVG(UNITPRICE) FROM GOODS - создает выборку, состоящую из одной cтроки и трех полей, содержащих минимальное значение цены, максимальное значение цены и ее среднее значение.
Читайте также: FROM dbo.Table2 -- выборка d2 из таблицы Table2 Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|