Формирование запросов на выборку данных в SQL

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

Рубрика Программирование, компьютеры и кибернетика
Вид практическая работа
Язык русский
Дата добавления 28.11.2014
Размер файла 1,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Для формирования запросов на выборку данных в SQL используется оператор SELECT. Его формат представлен ниже: SELECT [ALL I DISTINCT] selectitemcommalist FROM tablereferencecommalist [WHERE conditional_expression] [GROUP BY column_name_commalist] [HAVING conditionalexpression] [ORDER BY order item commalist]

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

1) выполняется раздел FROM;

2) выполняется раздел WHERE (если есть);

3) выполняется GROUP BY (если есть);

4) выполняется HAVING (если есть);

5) выполняются определения в разделе SELECT:

6) выполняется ORDER BY (если есть).

Начнем с рассмотрения обязательного раздела SELECT. В нем указывается список элементов выборки select-item-commalist, который не должен быть пустым. Также может использоваться ключевое слово ALL или DISTINCT. Первое из них указывает, что в результате запроса могут быть повторяющиеся строки, второе - что повторения отбрасываются. Например, используется ключевое слово

DISTINCT и есть три совпадающих строки, тогда в результате из них останется только одна. Когда явно ничего не указано, то подразумевается ALL.

Рассмотрим теперь пример с заданием имени столбца и использованием текстовой константы в столбце. Если необходимо явно указать, как столбец будет называться в выводимых результатах запроса, это можно сделать в списке элементов выборки в разделе SELECT. Новое имя указывается после исходного названия столбца через про - бел или после необязательного ключевого слова «as». Ниже приведен пример, в котором список фамилий и инициалов студентов сопровождается подписью «Фамилия и инициалы».

SELECT DISTINCT «Фамилия и инициалы» as Label1/ FIO FROM Students

Подпись задается с помощью строковой константы, которые в SQL берутся в одинарные кавычки. Называться столбец с подписью будет Label 1. Результат выполнения этого запроса для набора данных из табл. 7.2 представлен в табл. 7.3. Как отмечалось выше, ключевое слово «as» в SELECT можно пропустить, но иногда оно позволяет сделать текст на SQL более понятным.

Сравнение может производиться не только для чисел, но и для строковых значений (посимвольно), дат и т.д.

Если необходимо получить все значения из интервала, можно использовать конструкцию BETWEEN… AND…. Пусть имеется таблица Book с информацией о книгах, и в ней целочисленный стол - бец Year, содержащий год издания книги. Получить все книги, издан - ные с 1990 по 2002 год включительно, можно с помощью приведен - ного ниже запроса (т.к. «Year» для MS SQL Server является ключе - вым словом, название столбца снова в квадратных скобках). SELECT * FROM Book

WHERE (Year) BETWEEN 1990 AND 2002 Аналогичный результат даст запрос

SELECT * FROM Book

WHERE [Year]>=1990 AND [Year]<=2002

Если наоборот нужны все книги, кроме изданных в этот период, можно использовать конструкцию NOT BETWEEN:

SELECT * FROM Book

WHERE [Year] NOT BETWEEN 1990 AND 2002

Для приведенного выше примера запрос SELECT * FROM Results GROUP BY StudID должен привести к ошибке. При использовании GROUP BY, в разделе SELECT могут быть указаны только те столбцы, но которым произво - дится группировка. Прочие столбцы могут указываться, если они вы - ступают в качестве аргументов а1регатных функций, сопоставляющих группе значений одно.

Ниже приведены основные агрегатные функции:

- среднее значение: AVG ((DISTINCT | ALL) <выражение>);

- максимум: МАХ([DISTINCT|ALL] <выражение>);

- минимум: MIN([DISTINCT I ALL] <выражение>);

- сумма: SUM([DISTINCT I ALL] <выражение>);

- количество: COUNT ((DISTINCT | ALL) <выражение>) или COUNT (*).

Группировка может проводиться и по нескольким столбцам: для этого в разделе GROUP BY нужно перечислить их через запятую. Кроме того, можно группировать строю! по значению некоторой функции от данных в столбцах. Например, на рис. 7.1. а представлена таблица Device, в которой есть столбец DatePurch типа Date. В столб - це содержатся даты покупки устройств. Пусть необходимо подсчи - тать, сколько устройств было приобретено в каждом году (рис. 7.1, б). В Transact-SQL есть функция YEARO, позволяющая получить из даты значение года. Сам запрос будет выглядеть следующим образом: SELECT YEAR(DatePurch) [Год], COUNT(Devld) [К-во устройств] FROM Device GROUP BY YEAR(DatePurch)

Рассмотрим пример запроса, выводящего записи отсортирован - ными по двум столбцам: по названию предмета по возрастанию и оценке - по убыванию.

SELECT Subj, StudID, Mark FROM Results

ORDER BY Subj, Mark DESC

Список литературы

1. Диго С.М. Базы данных. Проектирование и создание: Учебно-методический комплекс. - М.: Изд. центр ЕАОИ, 2008. - 171 с.

2. Диго С.М. Проектирование и использование баз данных: учебник для вузов по направлению и специальности «Информ. систе - мы в экономике» / С.М. Диго. - М.: Финансы и статистика, 1995. - 207 с.

3. Дейт К.Дж. Введение в системы баз данных, 6-е издание: Пер. с англ. - К.; М.; СПб.: Издательский дом «Вильяме», 1999. - 848 с.

4. Карпова Т.С. Базы данных: модели, разработка, реализация. - СПб.: Питер, 2002 - 304 с.

5. Кириллов В.В. Введение в реляционные базы данных. / В.В. Кириллов. Г.Ю. Громов - СПб.: БХВ-Петербург, 2009. - 464 с.

6. N. Sharma, R.F. Chong и др. Database fundamentals / [Электронный ресурс] URL:

https7/w\vw.ibm.com/developenvorks/\vikis/display/db2oncampus/FREE+ ebook+-+Database+fundamcntals

7. Крёнке Д. Теория и практика построения баз данных. 8-е нзд - СПб.: Питер, 2003. (Серия «Классика computer science»). - 800 с.

8. Советов Б.Я. Базы данных: Теория и практика. Учеб. для вту - зов / Б.Я. Советов, В.В. Цехановский, В.Д. Чертовской. -2-е изд., стер. - М.: Высшая школа, 2007. - 463 с.

9. Кузнецов С.Д. Базы данных: языки и модели. Учебник - М.: ООО «Бином-Пресс», 2008. - 720 с.

10. Кривошеин М. ER: диаграммы сущность - связь. [Электрон - ный ресурс] URL: http://mikkri.narod.ru/library/pdf/ER_Modeling.pdf

П. Ицик Бен Гаи. Microsoft SQL Server 2008. Осиобы Т SQL: Пер. с англ. - СПб.: БХВ-Петербург, 2009. - 432 с.

Размещено на Allbest.ru


Подобные документы

  • Особенности использования инструкций SELECT. Задание критериев отбора (WHERE). Объединение нескольких источников данных. Групповые операции и вычисляемые поля. Формирование и выполнение запросов в реальном времени. Параметрические запросы. Сортировка.

    контрольная работа [31,1 K], добавлен 14.02.2009

  • Общие сведения о системах управления базами данных MS Access. Использование языка QBE для создания запросов на выборку данных. Параметрические и перекрестные запросы. Запросы с автоподстановкой, на выборку дубликатов и записей, не имеющих соответствия.

    курсовая работа [32,8 K], добавлен 03.06.2015

  • Создание БД с информацией о сотрудниках на основе таблиц: "Сотрудники", "Отдел". Поиск, сортировка и фильтрация данных в таблицах. Запросы на выборку данных, удаления и замены. Создание форм и отчетов на основе запросов и таблиц. Диспетчер кнопочных форм.

    лабораторная работа [136,7 K], добавлен 01.12.2011

  • Компоненты реляционной базы данных Microsoft Access. Создание структуры таблиц и определение связей между ними. Проектирование форм для сводных таблиц и запросов с помощью конструктора окон. Разработка и создание автоотчетов и запросов на выборку данных.

    реферат [3,3 M], добавлен 29.01.2011

  • Построение базы данных для экзаменационных ведомостей. Работа с таблицами, создание простых форм, отчетов и запросов (Query by Example). Использование информации из нескольких, связанных между собой таблиц. Запросы с использованием статистических функций.

    практическая работа [39,1 K], добавлен 24.06.2009

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

    курсовая работа [1,3 M], добавлен 18.10.2015

  • Функции базы данных Access: организация, добавление и изменение информации, связывание таблиц, макросы, модули, средства печати. Элементы базы данных: запросы, таблицы, формы и отчеты. Виды запросов: на выборку, перекрестные, на изменение, с параметрами.

    реферат [2,1 M], добавлен 16.05.2014

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

    курсовая работа [1,6 M], добавлен 29.10.2011

  • Составление таблицы согласно образцу в программе MS Excel. Создание данных таблицы базы данных. Введение формул в программе MS Excel. Установление связи между таблицами. Создание запроса на выборку данных из одной таблицы с помощью мастер запросов.

    контрольная работа [4,0 M], добавлен 17.04.2016

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

    контрольная работа [4,5 M], добавлен 18.03.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.