- •4. Реляционные языки запросов
- •Isbl -язык реляционной алгебры
- •Язык sql
- •Типы данных.
- •Создание, удаление или изменение таблиц или индексов с помощью управляющих запросов sql.
- •Инструкция create table
- •Предложение constraint (sql)
- •Инструкция alter table
- •Инструкция drop
- •Drop {table таблица | index индекс on таблица}
- •Инструкция create index
- •Запросы на выборку. Инструкция select
- •Предикаты all, distinct, distinctrow, top (sql)
- •Select [all | distinct | distinctrow | [top n [percent]]]
- •Предложение from
- •Синтаксис
- •Предложение where
- •Синтаксис
- •Предложение order by
- •Синтаксис
- •Группировка записей. Предложение group by
- •Синтаксис
- •Where условие_отбора
- •Предложение having
- •Синтаксис
- •From таблица
- •Запросы с соединением таблиц. Операция inner join
- •On таблица1.Поле2 оператор_сравнения таблица2.Поле2) or
- •Операции left join, right join
- •From таблица1 [ left | right ] join таблица2
- •Объединение результатов нескольких запросов. Операция union
- •Подчиненный запрос.
- •Запросы на изменение. Инструкция select...Into
- •From источник
- •Предложение in
- •Синтаксис
- •Инструкция insert into
- •Инструкция update
- •Инструкция delete
- •Delete [таблица.*]
- •Перекрестные запросы
- •Синтаксис
- •Запросы с параметрами Описание parameters
- •Синтаксис parameters имя тип_данных [, имя тип_данных [, ...]]
- •Статистические функции sql .
- •Функция Avg
- •Функция Count
- •Функции Min, Max
- •Функции StDev, StDevP
- •Функция Sum
- •Функции Var, VarP
- •Var(выражение)
- •VarP(выражение)
- •Quel:язык реляционного исчисления с переменными-кортежами
- •Query-by-example: язык исчисления с переменными – доменами
- •Формы запросов
- •Зарезервированные слова:
- •Конструирование операторов запроса.
- •Выбор записей
- •Запросы к нескольким таблицам
- •Вычисления
- •Операции
- •Группы записей
- •Работа с наборами записей
- •Развитые операторы запросов.
Запросы с параметрами Описание parameters
Описывает имя и тип данных каждого параметра в запросе с параметрами.
Синтаксис parameters имя тип_данных [, имя тип_данных [, ...]]
где:
имя - имя параметра. Имя может быть строкой, которая отображается в окне диалога при выполнении запроса. Строку, содержащую пробелы и знаки препинания, необходимо заключить в квадратные скобки ([ ]). ;
тип_данных - один из первичных типов данных SQL ядра Microsoft Jet или их синонимы.
Для регулярно выполняемых запросов можно использовать описание PARAMETERS, чтобы создать запрос с параметрами. Запрос с параметрами помогает автоматизировать процесс изменения условий отбора запроса. При наличии запроса с параметрами программа должна поставлять параметры при каждом запуске запроса.
Описание PARAMETERS не является обязательным, однако, если оно присутствует, то должно находиться перед всеми остальными инструкциями, в том числе, перед инструкцией SELECT.
Для разделения параметров в описании следует использовать запятые.
В предложении WHERE или HAVING можно использовать аргумент имя, но не тип_данных.
Пример:
Определить все данные поставщика по имени, задаваемому при выполнении запроса:
PARAMETERS Поставщик Text;
SELECT Поставщики.*
FROM Поставщики
WHERE Имя = Поставщик;
Статистические функции sql .
Статистические функции SQL используются для определения статистических данных на основе наборов числовых значений. Допускается использование этих функций в запросах и статистических выражениях свойства SQL объекта QueryDef или при создании объекта Recordset на основе запроса SQL.
Функция Avg
Вычисляет арифметическое среднее набора чисел, содержащихся в указанном поле запроса.
Синтаксис
Avg(выражение)
Аргумент выражение является строковым выражением, которое определяет поле, содержащее числовые данные для вычисления среднего значения, или выражение, выполняющее вычисления с данными из этого поля. Операнды аргумента выражение могут включать имя поля таблицы, константу или функцию (которая может быть внутренней или определяться пользователем, но не одной из других статистических функций SQL или статистических функций по подмножествам).
Среднее значение, вычисленное функцией Avg, является числовым значением (сумма значений, деленная на их количество).
Функция Avg не включает в вычисления поля со значениями Null.
Функция Count
Вычисляет количество записей, возвращаемых запросом.
Синтаксис
Count(выражение)
Аргумент выражение является строковым выражением, которое определяет поле, содержащее данные для подсчета, или выражение, выполняющее вычисления с данными из этого поля. Операнды аргумента выражение могут включать имя поля таблицы или функцию (которая может быть внутренней или определяться пользователем, но не одной из других статистических функций SQL). Подсчитывать можно любые данные, включая текстовые.
Функцию Count можно использовать для подсчета количества записей в базовом запросе.
Хотя аргумент выражение допускает выполнение вычислений над полем, функция Count возвращает просто количество записей, независимо от того, какие данные содержатся в этих записях.
Функция Count не подсчитывает записи с пустыми значениями, если только аргумент выражение не содержит подстановочные знаки звездочки (*). Если используются знаки звездочки, функция Count вычисляет общее количество записей, включая те, которые содержат пустые поля. Функция Count(*) работает значительно быстрее функции Count([Имя столбца]).
Если в аргументе выражение задано несколько полей, функция Count подсчитывает запись только в том случае, если хотя бы одно из полей не содержит значение Null. Если все указанные поля содержат значение Null, записи не подсчитываются. Для разделения имен полей используется знак (&).