Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Фильтрация набора данных

Покупка
Основная коллекция
Артикул: 787131.01.99
В данном издании приведены краткие сведения об операторах MS SQL Server, необходимых для фильтрации данных. Это пособие является первым в серии, посвященной операторам SQL, необходимым для выполнения лабораторных работ по дисциплинам «Информационное обеспечение систем управления» для бакалавров и «Основы построения защищенных баз данных» для специалистов. Сведения об операторах и предикатах SQL, рассмотренные здесь являются начальными и необходимыми для дальнейшего изучения языка SQL.
Васильева, М. А. Фильтрация набора данных : учебно-методическое пособие / М. А. Васильева, О. А. Тимофеева, К. М. Филипченко. - Москва : РУТ (МИИТ), 2020. - 31 с. - Текст : электронный. - URL: https://znanium.ru/catalog/product/1895309 (дата обращения: 20.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Министерство транспорта Российской Федерации 

Федеральное государственное автономное образовательное 

учреждение высшего образования 

«Российский университет транспорта»  

Институт транспортной техники и систем управления 

 

Кафедра «Управление и защита информации» 

 

М. А. Васильева 

О. А. Тимофеева 

К. М. Филипченко 

 
 
 
 
 
 

Фильтрация набора данных 

 
 
 
 
 
 
 
 

Учебно-методическое пособие 

 
 
 

 

 

Москва – 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’;