Фильтрация набора данных
Покупка
Основная коллекция
Тематика:
Системы управления базами данных (СУБД)
Издательство:
Российский университет транспорта
Авторы:
Васильева Марина Алексеевна, Тимофеева Ольга Александровна, Филипченко Константин Михайлович
Год издания: 2020
Кол-во страниц: 31
Дополнительно
Вид издания:
Учебно-методическая литература
Уровень образования:
ВО - Бакалавриат
Артикул: 787131.01.99
В данном издании приведены краткие сведения об операторах MS SQL Server, необходимых для фильтрации данных. Это пособие является первым в серии, посвященной операторам SQL, необходимым для выполнения
лабораторных работ по дисциплинам «Информационное обеспечение систем управления» для бакалавров и «Основы построения защищенных баз данных» для специалистов. Сведения об операторах и предикатах SQL,
рассмотренные здесь являются начальными и необходимыми для дальнейшего изучения языка SQL.
Тематика:
ББК:
УДК:
- 004: Информационные технологии. Вычислительная техника...
- 681: Точная механика. Автоматика. Приборостроение
ОКСО:
- ВО - Бакалавриат
- 27.03.04: Управление в технических системах
- ВО - Специалитет
- 10.05.01: Компьютерная безопасность
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов.
Для полноценной работы с документом, пожалуйста, перейдите в
ридер.
Министерство транспорта Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования «Российский университет транспорта» Институт транспортной техники и систем управления Кафедра «Управление и защита информации» М. А. Васильева О. А. Тимофеева К. М. Филипченко Фильтрация набора данных Учебно-методическое пособие Москва – 2020
Министерство транспорта Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования «Российский университет транспорта» Институт транспортной техники и систем управления Кафедра «Управление и защита информации» М. А. Васильева О. А. Тимофеева К. М. Филипченко Фильтрация набора данных Учебно-методическое пособие для бакалавров по направлению «Управление в технических системах» профиля «Управление и информатика в технических системах», а также специалистов по специальности «Компьютерная безопасность» специализации «Информационная безопасность объектов информатизации на базе компьютерных систем» Москва – 2020
УДК 681.3.06 В-19 Васильева М.А., Тимофеева О. А., Филипченко К.М. Фильтрация набора данных: Учебно-методическое пособие. – М.: РУТ (МИИТ). 2020. – 31 с. В данном издании приведены краткие сведения об операторах MS SQL Server, необходимых для фильтрации данных. Это пособие является первым в серии, посвященной операторам SQL, необходимым для выполнения лабораторных работ по дисциплинам «Информационное обеспечение систем управления» для бакалавров и «Основы построения защищенных баз данных» для специалистов. Сведения об операторах и предикатах SQL, рассмотренные здесь являются начальными и необходимыми для дальнейшего изучения языка SQL. Рецензент: к.э.н доцент кафедры «Информационные системы цифровой экономики» РУТ (МИИТ) Сеславина Е.А. © РУТ (МИИТ), 2020
Лабораторная работа «Фильтрация набора данных» Цель работы: Изучить операторы MS SQL Server, необходимые для фильтрации набора данных. Научиться создавать простые запросы на фильтрацию данных. Работа производится с учебной базой AdventureWorks2008R2. Краткие сведения об операторах SQL Structured Query Language (SQL) – язык структурированных запросов можно разделить на несколько подразделов: Data Definition Language (DDL) – язык определения данных, Data Manipulation Language (DML) – язык манипулирования данными, Structured Query Language (SQL) – язык запросов. Начнем изучение операторов SQL с последнего подраздела. Для этого нам необходимо иметь уже кем-то созданную и заполненную базу данных (БД). Корпорация Microsoft создала и заполнила учебную БД AdventureWorks2008R2, которую можно скачать с официального сайта1 и присоединить в SQL Server Management Studio (SSMS). Присоединение БД Чтобы присоединить БД для дальнейшей работы с ней, SSMS необходимо запустить от имени Администратора, даже, если на компьютере имеется всего один пользователь (см. Рисунок 1). 1 https://msdn.microsoft.com/ru-ru/library/aa992075.aspx
В окне Обозревателя объектов нажать правой кнопкой мыши на узле «Базы данных» и в появившемся контекстном меню выбрать пункт «Присоединить…» (см. Рисунок 2). Рисунок 1 Рисунок 2
В появившемся окне в разделе «Базы данных для присоединения» нажать на кнопку «Добавить», для того чтобы выбрать расположение БД AdventureWorks2008R2 (см. Рисунок 3). После выбора файла нажать кнопку «OK». В разделе «Сведения о базе данных "AdventureWorks2008R2"» появились два файла – данные и журнал (см. Рисунок 4). Нажмите на кнопку «OK», и БД станет доступной в Обозревателе объектов. Рисунок 3
Выбор полей Любой запрос начинается с оператора SELECT2 (выбрать), после которого через запятую следует перечислить список полей (выражений), значения которых требуется выбирать. Если имя выражения или поля является зарезервированным в MS SQL Server значением, то его следует экранировать, заключив в квадратные скобки. В предложении SELECT можно записать следующее выражение: SELECT 1; В результате выполнения запроса будет выведено «1». 2 SQL – регистр-независимый язык. Однако следует придерживаться определенных соглашений. Предикаты языка удобно записывать с использованием символов верхнего регистра, а имена таблиц и полей в PascalCase (или иначе UpperCamelCase). SELECT выражение1, [выражение2], ...; Рисунок 4
Следующим оператором является FROM (из), после которого следует название источника (таблицы), поля которой были указаны в предложении SELECT. Запрос заканчивается оператором «точка с запятой»3: Для сокращения записи можно использовать вместо имени таблицы её псевдоним, имя которого может быть любым соответствующим правилу именования полей, т. е. начинаться с буквы и не иметь в своем составе других символом, кроме букв и цифр: Так как все поля принадлежат только таблице TargetTable, то в предложении SELECT имя таблицы или псевдоним можно не указывать: Если требуется выбирать все имеющиеся в таблице поля, то используется предикат «звездочка»: Пример 1 Из таблицы Production.Product БД AdwentureWorks2008R2 выбрать значения полей Name, Color и Size. 3 В SQL Server Management Studio оператор «;» является необязательным. 4 Предикат AS в SQL Server Management Studio можно опустить SELECT TargetTable.Field1 , TargetTable.Field2 , ... , TargetTable.FieldN FROM TargetTable; SELECT T.Field1, T.Field2, ..., T.FieldN FROM TargetTable AS4 T; SELECT Field1, Field2, ..., FieldN FROM TargetTable; SELECT * FROM TargeTable;
Создайте новый запрос. Выберите БД, к которой собираетесь обращаться (выделено на рисунке ниже в красном прямоугольнике). Наберите текст запроса: SELECT Name, Color, Size FROM Production.Product Выполните запрос, нажав на кнопку «Выполнить» (она подчеркнута на рисунке ниже). Результат выполнения запроса представлен на Рисунок 5. Рисунок 5 Фильтрация данных Для фильтрации данных из выбранных полей используется оператор WHERE (где), после которого следует множество предикатов. Все записи из таблицы, значения полей которых при подстановке в предикат, дают значение «истина», попадут в результирующих набор данных.
Условий может быть несколько, сочетаться они могут при помощи различных комбинаций булевых операторов AND, OR, NOT5 (И, ИЛИ, НЕ, соответственно). Пример 2 Выбрать из таблицы Production.Product товары чёрного цвета, размер которых 44 или 46 (размер имеет символьный тип). SELECT Name, Color, Size FROM Production.Product WHERE (Size = '44' OR Size = '46') AND Color = 'Black'; Предикат LIKE Для фильтрации строковых данных на полное совпадение можно использовать знак равенства. Однако обычно для строковых переменных поиск по полному совпадению является частным случаем. Чаще используется частичное совпадение. Для таких целей применяется предикат LIKE. Формат данного предиката такой: Предикат LIKE может принимать в качестве аргумента не только строку, но и шаблон. Например, для частичного совпадения можно использовать управляющие последовательности (escape-sequences): 5 Старайтесь строить запрос, не используя условие отрицания, так как на его отработку уходит больше времени. Если нельзя переписать условие на положительный исход, то для записи условия можно использовать как союз NOT, так и знак «<>»или сочетание «!=». SELECT Field1, Field2, ..., FieldN FROM TargetTable WHERE <Условие 1> AND (OR) <Условие 2> ...; SELECT Fields1, Fields2, ..., FieldsN FROM TableName WHERE FieldK LIKE ‘example’; -- Последняя строка эквивалентна -- WHERE FieldK = ‘example’;