Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекц11 Мова QBE Укр!.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
546 Кб
Скачать
☆

11.2. Запити на вибірку

Для ілюстрації засобів і можливостей мови QBE використовуємо таблиці БД деякої торгової фірми, що продає товари декількох видів. База включає чотири таблиці:

  • ТаблСлужбовці: ПІБ – прізвище, ім’я і по батькові службовців, зарплата - розмір посадового окладу, відділ – назва відділу в якому працює службовець;

  • ТаблПродажі: відділ - назва відділу, товар - назва товару;

  • ТаблПостачальники: товар - назва товару, що поставляється; постачальник - назва фірми, що поставляє товар;

  • ТаблТипТовару: товар - назва товару, колір - його колір, вартість - вартість товару.

ТаблСлужбовці

ТаблПродажі

ПІБ

зарплата

відділ

відділ

товар

Іванов В.М.

2000

госптоваи

канцтовари

папір

Петров С.І.

2300

іграшки

госптоваи

мило

Сідоров Е.А.

2000

косметика

канцтовари

олівець

Левін П. Г.

2600

канцтовари

косметика

помада

Носов А. П.

1600

іграшки

іграшки

літак

Єгоров В.С.

2200

косметика

іграшки

машина

Биков Т. В.

1700

косметика

іграшки

лялька

Бєлкін Б.Н.

1800

госптоваи

косметика

духи

Сёмін С.В.

2600

канцтовари

канцтовари

чорнила

Грач А. Н.

1900

іграшки

госптоваи

посуд

Томін А.Н.

2000

іграшки

канцтовари

ручка

ТаблПостачальники

ТаблТипТовару

товар

постачальник

товар

колір

вартість

ручка

Плямка

посуд

білий

30,00гр.

папір

Плямка

помада

червоний

17,00гр.

мило

Ромашка

духи

42,00гр.

олівець

Школярик

ручка

зелений

6,00гр.

чорнила

Плямка

олівець

синій

2,00гр.

духи

Красуня

чорнила

зелений

4,00гр.

чорнила

Школярик

чорнила

синій

3,00гр.

посуд

Господарка

олівець

червоний

2,50гр.

помада

Красуня

машина

12,00гр.

літак

Малятко

папір

білий

15,00гр.

машина

Малятко

мило

2,00гр

лялька

Малятко

літак

28,00гр

посуд

Школярик

лялька

30,00гр

ручка

Красуня

олівець

Плямка

Приклад 1. Запит із простою вибіркою - Вибрати з ТаблТипТовару всі товари зеленого кольору. Запитальна форма приведена на рис. 11.2. Щоб поле виводилося на печатку необхідно в рядку "вывод на экран" установити прапорець. Умова відбору для поля колір визначена як "зелений".

Запит1: Запит на вибірку

ТаблТипТовару

*

товар

колір

вартість

Поле:

товар

колір

вартість

Имя таблицы:

ТаблТипТовару

ТаблТипТовару

ТаблТипТовару

Сортировка:

Вывод на экран:

Условие отбора:

"зелений"

или:

Рисунок 11. 2.

Відповідна таблиця за структурою цілком відповідає зразку і має вигляд

товар

колір

вартість

ручка

зелений

6,00гр.

чорнила

зелений

4,00гр.

Приклад 2. Запит з виводом не всіх полів - Вивести з ТаблТипТовару тільки найменування товарів зеленого кольору. У зразок можна не включати поле вартість, а для поля колір потрібно зняти прапорець виводу на екран. Запитальна форма приведена на рис. 11.3.

Запит 2: Запит на вибірку

ТаблТипТовару

*

товар

колір

вартість

Поле:

товар

колір

Имя таблицы:

ТаблТипТовару

ТаблТипТовару

Сортировка:

Вывод на экран:

Условие отбора:

"зелений"

или:

Рисунок 11. 3.

Результатом виконання запиту є таблиця:

товар

ручка

чорнила



Приклад 3. Запит із простою вибіркою - Вибрати з ТаблТипТовару всі кольори товарів. Запитальна форма приведена на рис. 11.4.

Запит 3: Запит на вибірку

ТаблТипТовару

*

товар

колір

вартість

Поле:

колір

Имя таблицы:

ТаблТипТовару

Сортировка:

Вывод на экран:

Условие отбора:

или:

Рисунок 11. 4.

Відповідна таблиця має вигляд

колір

білий

червоний

зелений

синій

зелений

синій

червоний

білий



Варто звернути увагу на те, що деякі значення у відповідній таблиці повторюються. З цього випливає, що в простому запиті уникнути повторень значень не вдається. Щоб уникнути повторення значень необхідно у властивостях запиту установити дозвіл на вивід тільки унікальних значень або використати додаткову операцію угруповання, що буде розглянута пізніше.

Приклад 4. Запит простої вибірки з упорядкуванням - З ТаблСлужбовці вивести прізвища співробітників упорядкувавши їх за абеткою (по зростанню). Запитальна форма приведена на рис. 11.5., а результати виконання запиту у відповідній таблиці.

Спосіб упорядкування виведених значень "по зростанню" чи "по убуванню" вибирається зі списку, що розкривається, при натисканні кнопки в рядку Сортировка. Сортування можна робити по декількох полях одночасно. При цьому сортування спочатку виконується по першому полю, потім по другому і т.д. Наприклад, для таблиці з полями Прізвище, Ім'я, Зарплата на початку за алфавітом будуть відсортовані прізвища. Потім при наявності однофамільців вони будуть відсортовані по іменах. І, нарешті, при збігу прізвищ і імен буде виконано сортування по величині зарплати.

Запит 4: Запит на вибірку

ТаблСлужбовці

*

ПІБ

зарплата

керівник

відділ

Поле:

ПІБ

Имя таблицы:

ТаблСлужбовці

Сортировка:

по возрастанию

Вывод на экран:

Условие отбора:

или:

Рисунок 11. 5.


ПІБ

Бєлкін Б.Н.

Биков Т. В.

Грач А. Н.

Єгоров В.С.

Іванов В.М.

Лєвін П. Г.

Носов А. П.

Петров С.І.

Сёмін С.В.

Сідоров Е.А.

Томін А.Н.