Шаблоны имен файлов
Bash, а также другие командные оболочки Linux и средства языков программирования позволяют находить в структуре дерева каталогов те файлы, имена которых соответствуют определенному шаблону имени файла. В случае командной оболочки именно она сравнивает с шаблоном имя очередного файла. Если оно соответствует шаблону, то файл будет учтен, если нет – будет пропущен. Шаблон можно сравнить с коробкой, в которую влезет не каждый объект. Не только из-за размеров, также из-за несовпадения формы коробки и предмета.
Зачем нужны шаблоны имен? Часто требуется выполнить однотипные действия над группой файлов. Описывать эти действия по отношению к каждому отдельному файлу или перечислять их все после команды было бы трудоемкой задачей. Таким образом, шаблоны позволяют выделить группу файлов, чьи имена удовлетворяют определенным условиям, из общей массы.
Кроме того, шаблоны часто используют для поиска файлов.
Шаблоны имен файлов и каталогов задаются с помощью специальных символов. Чаще используются два: * – звездочка, ? – знак вопроса.
Звездочкой (*) в шаблоне обозначают любую группу символов. Их количество роли не играет. Это могут быть пять, десять, один символ или даже ни одного. Так, например, шаблону, состоящему всего из одного символа * , будет соответствовать абсолютно любой файл. Использование шаблона *.html позволит выделить все html-файлы, а шаблон my*.odt – файлы, начинающиеся с «my» и оканчивающиеся на «.odt». Шаблон *2010* определяет все файлы, в именах которых присутствует группа символов 2010.
Знаком вопроса (?) в шаблоне обозначают любой один символ. Например, под шаблон otchet. подойдут файлы, имеющие расширение из любых трех букв, но начинающиеся именно так, как задано в шаблоне. Шаблону descrip?ion.pdf будут соответствовать файлы с заданным именем, но вместо знака вопроса может стоять любой символ.
Кроме символов звезды и вопроса, существуют более сложные правила записи шаблонов. Так использование квадратных скобок [ ] со списком вложенных значений позволяет осуществлять более гибкий поиск файлов. Пусть требуется найти все файлы, имена которых начинаются с буквы m , при этом регистр не учитывается. Шаблон будет выглядеть так: [mM]* .
Если надо одновременно найти файлы, начинающиеся на буквы, идущие подряд в алфавите, то задается диапазон. Например, под шаблон [m-pM-P]. png подойдут все файлы с расширением png, имена которых состоят из четырех букв, причем первая буква m или n или o или p без учета регистра.
Понятно, что в одном шаблоне имени файла можно использовать разные специальные символы. Например, [aA]*. .
В Bash шаблоны имен используются с командами, которые в качестве аргументов принимают имена файлов. Например, ls – просмотр каталогов, cp – копирование файлов, find – поиск файлов и др. Однако на самом деле командам передается не шаблон, а уже подошедшие под него файлы. Определением подходящих под шаблон объектов занимается сама командная оболочка Linux, в данном случае Bash.
Курс с ответами к заданиям и дополнительными уроками в PDF
X Скрыть Наверх
Введение в Linux и Bash. Курс
Команда LIKE
В данном примере при выборке из таблицы команда LIKE найдет все записи, у которых имя заканчивается на ‘я’ :
SELECT * FROM employees WHERE name LIKE ‘%я’
Результат выполнения кода:
| id айди |
name имя |
age возраст |
salary зарплата |
|---|---|---|---|
| 2 | Пет я | 25 | 500 |
| 3 | Вас я | 23 | 500 |
| 4 | Кол я | 30 | 900 |
Пример
Давайте выберем те записи, у которых возраст начинается с цифры 2 , а затем идет еще один символ:
SELECT * FROM employees WHERE age LIKE ‘2_’
Результат выполнения кода:
| id айди |
name имя |
age возраст |
salary зарплата |
|---|---|---|---|
| 1 | user1 | 2 3 | 400 |
| 2 | user2 | 2 5 | 500 |
| 3 | user3 | 2 3 | 500 |
| 5 | user5 | 2 7 | 500 |
| 6 | user6 | 2 8 | 900 |
Смотрите также
- команду NOT ,
которая делает отрицание (так: NOT LIKE)
Какая команда задает поиск по определенному шаблону
Запросы на выборку в Access
В простейшем случае запрос реализует выбор из одной таблицы нужных полей, записей, соответствующих заданным условиям отбора, и просмотр результатов выполнения запроса.
Конструирование запросов на выборку с условиями отбора
Рассмотрим запросы на выборку в Access на примере получения информации из таблицы ТОВАР базы данных Поставка товаров.
Задача 1. Пусть необходимо выбрать ряд характеристик товара по его наименованию.
- Для создания запроса в окне базы данных выберите вкладку ленты — Создание (Create) и в группе Запросы (Queries) нажмите кнопку Конструктор запросов (Query Design). Откроется пустое окно запроса на выборку в режиме конструктора — ЗапросN (QueryN) и диалоговое окно Добавление таблицы (Show Table) (рис. 4.2).
- В окне Добавление таблицы (Show Table) выберите таблицу ТОВАР и нажмите кнопку Добавить (Add). Выбранная таблица будет отображена в области схемы данных запроса. Закройте окно Добавление таблицы (Show Table), нажав кнопку Закрыть (Close).
В результате выполненных действий в окне конструктора запросов (рис. 4.1) в верхней панели появится схема данных запроса, которая включает выбранные для данного запроса таблицы. В данном случае одну таблицу ТОВАР. Таблица представлена списком полей. Первая строка в списке полей таблицы, отмеченная звездочкой (*), обозначает все множество полей таблицы. Нижняя панель является бланком запроса, который нужно заполнить.

Кроме того, на ленте появляется и автоматически активизируется новая вкладка Работа с запросами | Конструктор (Query Tools | Design) (на рис. 4.3 представлена на часть этой вкладки), на которой цветом выделен тип созданного запроса — Выборка (Select). Таким образом, по умолчанию всегда создается запрос на выборку. Команды этой вкладки представляют инструментарий для выполнения необходимых действий при создании запроса. Эта вкладка открывается, когда в режиме конструктора создается новый запрос или редактируется существующий.

- Для удаления любой таблицы из схемы данных запроса установите на нее курсор мыши и нажмите клавишу . Для добавления ― нажмите кнопку Отобразить таблицу ( Show Table) в группе Настройка запроса (Query Setup) на вкладке Работа с запросами | Конструктор (Query Tools | Design) или выполните команду Добавить таблицу (Show Table) в контекстном меню, вызываемом на схеме данных запроса.
- В окне конструктора (рис. 4.4) последовательно перетащите из списка полей таблицы ТОВАР поля НАИМ_ТОВ, ЦЕНА, НАЛИЧИЕ_ТОВ в столбцы бланка запроса в строку Поле (Field).
- Для включения нужных полей из таблицы в соответствующие столбцы запроса можно воспользоваться следующими приемами:
- в первой строке бланка запроса Поле (Field) щелчком мыши вызвать появление кнопки списка и выбрать из списка нужное поле. Список содержит поля таблиц, представленных в схеме данных запроса;
- дважды щелкнуть на имени поля таблицы в схеме данных запроса;
- для включения всех полей таблицы можно перетащить или дважды щелкнуть на символе * (звездочка) в списке полей таблицы в схеме данных запроса.
- Если вы по ошибке перетащили в бланке запроса ненужное поле, удалите его. Для этого переместите курсор в область маркировки столбца сверху, где он примет вид черной стрелки, направленной вниз, и щелкните кнопкой мыши. Столбец выделится. Нажмите клавишу или выполните команду Удалить столбцы (Delete Columns) в группе Настройка запроса (Query Setup).
- В строке Вывод на экран (Show) отметьте поля, иначе они не будут включены в таблицу запроса.
- Запишите в строке Условия отбора (Criteria) наименование товара, как показа-но в бланке запроса на рис. 4.4. Так как выражение в условии отбора не содержит оператора, то по умолчанию используется оператор =. Используемое в выражении текстовое значение вводится в двойных кавычках, которые добавляются автоматически.
- Выполните запрос, щелкнув на кнопке Выполнить (Run) или на кнопке Режим (View) в группе Результаты (Results). На экране появится окно запроса в режиме таблицы с записью из таблицы ТОВАР, отвечающей заданным условиям отбора.

ЗАМЕЧАНИЕ
Окно запроса в режиме таблицы аналогично окну просмотра таблицы базы данных. Через некоторые таблицы запроса может производиться изменение данных базовой таблицы, лежащей в основе запроса. Запрос, просматриваемый в режиме таблицы, в отличие от таблицы базы данных Access 2010, не имеет столбца Щелкнуть для добавления (Click to Add), предназначенного для изменения структуры таблицы. В этом режиме на вкладке ленты Главная (Home) доступны те же кнопки, что и при открытии таблицы базы данных.
- Если при вводе сложного наименования товара вы допустили неточность, товар не будет найден в таблице. Использование операторов шаблона — звездочка (*) и вопросительный знак (?) (стандарт ANSI-89, используемый для запросов по умолчанию) или знак процента (%) и подчеркивания (_) (ANSI-92, рекомендуемый как стандарт для SQL Server), упрощает поиск нужных строк и позволяет избежать многих ошибок. Введите вместо полного имени товара Корпус* или Корпус%. Выполните запрос. Если в поле наименования товара одно значение начинается со слова «Корпус», результат выполнения запроса будет таким же, как в предыдущем случае. После выполнения запроса введенное выражение будет дополнено оператором Like «Корпус*». Этот оператор позволяет использовать символы шаблона при поиске в текстовых полях.
- Если необходимо найти несколько товаров, используйте оператор In. Он позволяет выполнить проверку на равенство любому значению из списка, который задается в круглых скобках. Запишите в строке условий отбора In («Корпуc MiniTower»;»HDD Maxtor 20GB»;»FDD 3,5″). В таблице запроса будет выведено три строки. В операторе In не допускается использование символов шаблона.
Задача 2. Пусть надо выбрать товары, цена которых не более 1000 руб., и НДС не более 10%, а также выбрать товары, цена которых более 2500 руб. Результат должен содержать наименование товара (НАИМ_ТОВ), его цену (ЦЕНА) и НДС (СТАВКА_НДС).
- Создайте новый запрос в режиме конструктора, добавьте таблицу ТОВАР. В окне конструктора (рис. 4.5) последовательно перетащите из списка полей таблицы ТОВАР в бланк запроса поля НАИМ_ТОВ, ЦЕНА, СТАВКА_НДС.
- Запишите Условия отбора (Criteria), как показано в бланке запроса на рис. 4.5. Между условиями, записанными в одной строке, выполняется логическая операция AND. Между условиями, записанными в разных строках, выполняется логическая операция OR.
- Выполните запрос, щелкните на кнопке Выполнить (Run) в группе Результаты (Results). На экране появится окно запроса в режиме таблицы с записями из таблицы ТОВАР, отвечающими заданным условиям отбора.
- Сохраните запрос, выполнив соответствующую команду в контекстном меню запроса, которое вызывается при установке курсора на заголовок запроса. Дайте ему имя Пример2.

Задача 3. Пусть надо выбрать все накладные за заданный период. Результат должен содержать номер накладной (НОМ_НАК), код склада (КОД_СК), дату отгрузки (ДАТА_ОТГР) и общую стоимость отгруженного товара (СУММА_НАКЛ).
- Создайте новый запрос в режиме конструктора, добавьте таблицу НАКЛАДНАЯ. В окне конструктора последовательно перетащите из списка полей таблицы НАКЛАДНАЯ в бланк запроса все необходимые поля.
- Для поля ДАТА_ОТГР в строке Условия отбора (Criteria) запишите Between #11.01.2008# And #31.03.2008#. Оператор Between задает интервал дат (в ANSI-92 вместо знака # используются одинарные кавычки ‘). Кроме того, этот оператор позволяет задать интервал для числового значения.
Для закрепления смотрим видеоурок:
Вычисляемые поля в запросах Access далее.
Использование критерия Like для поиска данных
Условия или оператор Like используются в запросе для поиска данных, которые соответствуют определенному шаблону. Например, в нашей базе данных есть таблица «Клиенты», как по примеру ниже, и нам нужно найти только клиентов, живущих в городах, названия которых начинаются с «B». Вот как мы создадим запрос и будем использовать условия Like:

«Клиенты»:
В результатах запроса будут отбираться только клиенты из названий городов, названия которых начинаются с буквы «B».

Дополнительные информацию об использовании критериев см. в этой теме.
Использование оператора Like в SQL в синтаксис
Если вы предпочитаете синтаксис SQL (язык SQL), вот как это сделать:
- Откройте таблицу «Клиенты» и на вкладке «Создание» нажмите кнопку «Конструктор запросов».
- На вкладке «Главная» нажмите кнопку «>SQL», а затем введите следующий синтаксис:
SELECT [Last Name], City FROM Customers WHERE City Like “B*”;
- Щелкните Выполнить.
- Щелкните вкладку запроса правой кнопкой мыши и выберите >«Закрыть».
Дополнительные сведения см. в SQL Access: основные понятия, лексика и синтаксис, а также о том, как изменять SQL для более четкого получения результатов запроса.
Примеры шаблонов условий Like и результатов
Условия или оператор Like удобны при сравнении значения поля с строкным выражением. Следующий пример возвращает данные, которые начинаются с буквы P, за которой идут любая буква от A до F и три цифры:
Like “P[A-F]###”
Вот несколько способов использования like для различных шаблонов:
Если ваша база данных имеет
соответствие, вы увидите
Если в базе данных нет
совпадений, вы увидите
