Найти тему
ITBases

Фильтрация данных в Microsoft SQL Server

Введение

Для фильтрации данных в таблицах SQL Server можно воспользоваться несколькими методами. Первый способ – это визуальный и для его реализации потребуется Microsoft Management Studio.

Второй способ подразумевает использование SQL-запросов, поэтому их можно выполнять, как и в Management Studio, так из командной строки, либо же из сред разработки, и вы сможете увидеть результат фильтрации в командной строке или же компоненте, который используете для отображения данных.

Использование области условий в SQL Management Studio хорошо тем, что после фильтрации данных, выведенную информацию можно сразу же отредактировать, и она будет сохранена в базе данных (таблице). Также при помощи области условий можно быстро указывать, какие поля выводить при фильтрации данных, а при помощи SQL-запроса их необходимо будет перечислять в самом запросе.

У каждого метода есть свои плюсы и минусы. Если, например, необходимо быстро посмотреть, что находится в таблице по определенному условию и при необходимости изменить это значение, то я предпочтение отдаю Management Studio. Если редактировать ничего не требуется, то можно все это сделать при помощи запроса, а если вы сразу знаете, что необходимо изменить в нескольких строках данные по определенному условию, то здесь однозначно лучше использовать SQL-запрос.

Фильтрация данных при помощи области условий

Выполнение инструкции из данного раздела предполагает, что на вашем компьютере установлен SQL Management Studio, через который вы можете подключиться к своей базе данных.

Для того чтобы отфильтровать данные при помощи области условий, необходимо открыть таблицу и на панели управления нажать на кнопку Показать область условий или сочетание клавиш Ctrl+2:

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

-2

Если вам необходимо вывести все сразу поля, но можно задать через символ *, в таком случае нет необходимости перечислять все поля:

-3

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

Что касается самих фильтров, то здесь поддерживаются условные (логические операции), что и в SQL-запросах:

-4

Все эти операции вы можете указывать в области условий для конкретных полей вашей таблицы. Например, зададим условие между двумя значениями:

-5

Для того чтобы выполнить условие необходимо на панели инструментов нажать на кнопку Выполнить код SQL или нажать сочетание клавиш Ctrl+R:

-6

Также в условиях вы можете задавать тип сортировки: по возрастанию, по убыванию или же без сортировки.

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

-7

Фильтрация данных при помощи SQL-запросов

Здесь в принципе все тоже самое, что и при помощи области условий в Management Studio, отличие лишь в том, что используются SQL-запросы и их необходимо писать вручную, но в этих запросах мы применяем эти же самые логические операции, что и в области условий.

Также представлю список логических операций, которые доступны в SQL-запросах:

-8

Например, для того, чтобы выбрать значения, которые начинаются с определенной подстроки, необходимо воспользоваться конструкцией LIKE:

SELECT * FROM LOGS
WHERE EVENTS LIKE 'Удаление%'

Сам запрос вы можете выполнить либо же в Management Studio, либо при помощи командной строки или же со среды разработки:

-9

Запросы пишите на свое усмотрение: фильтруете при помощи LIKE, например, по частичному совпадению, промежуток между двумя указанными значениями, больше или меньше заданного значения и тому подобное, то есть, применяете все те операции, которые описаны выше.

Заключение

Для некоторых пользователей фильтровать данные удобно через SQL-запросы, но я бы порекомендовал, чтобы на вашем компьютере также была установлено приложение SQL Management Studio.

Таким образом вы сможете комбинировать фильтрацию данных при помощи запросов или же с использованием графического интерфейса. Здесь оттолкнуть может только то, что не у всех имеется Management Studio и не каждый захочет ее устанавливать, но думаю, что это не такая причина, чтобы отказываться от удобной фильтрации данных в MS SQL Server.