Составители:
Рубрика:
73
При выполнении следующих заданий старайтесь предугадать, какие записи будут
«видимыми» при использовании фильтра; обязательно проанализируйте состав записей,
выведенных командой BROWSE после фильтрации, и сравните с Вашими
предположениями. Мысленно поставьте себе оценку.
• Установите фильтр для отбора записей, в которых баллы за сессии 01 и 02 больше
4.0:
SET FILTER TO Балл
_сес01>4.0.AND. Балл_сес02>4.0
BROWSE
Обратите внимание
: «сложное» условие фильтрации, содержащее операции над
несколькими полями, может содержать операции АЛГЕБРЫ ЛОГИКИ («и», «или», «не» -
AND, OR, NOT), окруженные точками (можно - пробелами).
• Установите фильтр для отбора записей, в которых средний балл за сес 01 и 02 выше
4.5:
SET FILTER TO (Балл_сес01+ Балл_сес02)/2 > 4.5
BROWSE
•
Установите фильтр, содержащий разнотипные поля в условиях отбора - например,
отберите записи, относящиеся к студентам с фамилиями, начинающимися с букв «Я»
или «Т», и имеющим оценки не ниже 4.5 за сессию 01:
SET FILTER TO LEFT(ФИО,1)=«Я».OR.LEFT(ФИО,1) =«Т»).
AND. Балл_сес01>=4.5 (набирайте в одной строке или
разделяйте строки
символом « ; » !)
BROWSE
В последнем фильтре использована команда выделения нескольких символов в
поле (начиная с левого) :функция
LEFT(<имя_поля_симв._типа, число_символов>)
возвращает заданное число_символов (в примере 1), читаемых слева в имени поля
символьного типа. Имеется аналогичная функция, возвращающая заданное
число_символов, читаемых справа
RIGHT(<имя_
поля_симв._типа, число_символов>)
Имеется также функция, возвращающая заданное число_символов из «середины»
символьной строки, начиная (и включая!) символ_с_ заданным_номером:
SUBSTR(<имя_поля_симв._типа, симв._с_задан._номером,_
_число_символов_начиная_с_него>)
(например: функция SUBSTR(Группа,5,1) возвратит значение одного символа в 5-й
позиции
поля Группа - в файле students.dbf в этой позиции записан символ (не цифра) «5»
или «6»).
Логические условия, по которым осуществляется фильтрация записей, могут содержать:
• имена полей;
• знаки действий, допустимых для полей данного типа
(^,*,/,+,- для числовых полей;
+,- для полей типа ДАТА;
+ (слияние, в СУБД вместо этого принят термин конкатенация) для символьных полей);
• знаки алгебры логики (.AND. .OR. .NOT.), которые могут соединять выражения
над данными
различных типов (см. вышеприведенный пример);
• знаки скобок;
• знаки сравнения >,<,>=,<=,#(не равно).
Решите следующие задачи:
выполните выше описанные примеры в диалоге Work Area Properties;
установите фильтр для отбора записей, в которых в наименовании группы
имеется цифра 5 на 5-й позиции, и в которых средний балл за сессию 01 ниже 4.5.
установите фильтр для отбора записей, которые относятся к студентам-
отличникам (наборов как 1997, так
и 1993 г.).
Новые команды и функции:
73
При выполнении следующих заданий старайтесь предугадать, какие записи будут
«видимыми» при использовании фильтра; обязательно проанализируйте состав записей,
выведенных командой BROWSE после фильтрации, и сравните с Вашими
предположениями. Мысленно поставьте себе оценку.
• Установите фильтр для отбора записей, в которых баллы за сессии 01 и 02 больше
4.0:
SET FILTER TO Балл_сес01>4.0.AND. Балл_сес02>4.0
BROWSE
Обратите внимание: «сложное» условие фильтрации, содержащее операции над
несколькими полями, может содержать операции АЛГЕБРЫ ЛОГИКИ («и», «или», «не» -
AND, OR, NOT), окруженные точками (можно - пробелами).
• Установите фильтр для отбора записей, в которых средний балл за сес 01 и 02 выше
4.5:
SET FILTER TO (Балл_сес01+ Балл_сес02)/2 > 4.5
BROWSE
• Установите фильтр, содержащий разнотипные поля в условиях отбора - например,
отберите записи, относящиеся к студентам с фамилиями, начинающимися с букв «Я»
или «Т», и имеющим оценки не ниже 4.5 за сессию 01:
SET FILTER TO LEFT(ФИО,1)=«Я».OR.LEFT(ФИО,1) =«Т»).
AND. Балл_сес01>=4.5 (набирайте в одной строке или разделяйте строки
символом « ; » !)
BROWSE
В последнем фильтре использована команда выделения нескольких символов в
поле (начиная с левого) :функция
LEFT(<имя_поля_симв._типа, число_символов>)
возвращает заданное число_символов (в примере 1), читаемых слева в имени поля
символьного типа. Имеется аналогичная функция, возвращающая заданное
число_символов, читаемых справа
RIGHT(<имя_поля_симв._типа, число_символов>)
Имеется также функция, возвращающая заданное число_символов из «середины»
символьной строки, начиная (и включая!) символ_с_ заданным_номером:
SUBSTR(<имя_поля_симв._типа, симв._с_задан._номером,_
_число_символов_начиная_с_него>)
(например: функция SUBSTR(Группа,5,1) возвратит значение одного символа в 5-й
позиции поля Группа - в файле students.dbf в этой позиции записан символ (не цифра) «5»
или «6»).
Логические условия, по которым осуществляется фильтрация записей, могут содержать:
• имена полей;
• знаки действий, допустимых для полей данного типа
(^,*,/,+,- для числовых полей;
+,- для полей типа ДАТА;
+ (слияние, в СУБД вместо этого принят термин конкатенация) для символьных полей);
• знаки алгебры логики (.AND. .OR. .NOT.), которые могут соединять выражения над данными
различных типов (см. вышеприведенный пример);
• знаки скобок;
• знаки сравнения >,<,>=,<=,#(не равно).
Решите следующие задачи:
выполните выше описанные примеры в диалоге Work Area Properties;
установите фильтр для отбора записей, в которых в наименовании группы
имеется цифра 5 на 5-й позиции, и в которых средний балл за сессию 01 ниже 4.5.
установите фильтр для отбора записей, которые относятся к студентам-
отличникам (наборов как 1997, так и 1993 г.).
Новые команды и функции:
Страницы
- « первая
- ‹ предыдущая
- …
- 25
- 26
- 27
- 28
- 29
- …
- следующая ›
- последняя »
