Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД / Uchpos / Gl_4.doc
Скачиваний:
24
Добавлен:
27.04.2015
Размер:
342.53 Кб
Скачать

Конструирование операторов запроса.

Запрос формируется как пример информации, интересующей пользователя. При этом указывается, какие поля нужно включить в Answer и критерии выбора записей. Для выбора поля курсор перемещается в него и нажимается клавиша F6. В поле появляется знак √ (checkmark). Повторное нажатие F6 отменяет выделение. Для выбора всех полей курсор помещается в крайнее левое поле и нажимается F6. При этом √ появится во всех полях формы.

Выбранные поля включаются в Answer обычно под теми же именами, которые они имели в форме запроса. Для изменения имени используется as. В приводимых ниже примерах используется база данных, содержащая таблицы S (Поставщики), P (Детали), SP (Поставки) и SPO (Заказы):

STR_S═╦════════Field Name═╦Field Type╗

1 ║ НомП ║ A3* ║

2 ║ ИмяП ║ A8 ║

3 ║ Статус ║ S ║

4 ║ Город ║ A15 ║

STR_P═╦════════Field Name═╦Field Type╗

1 ║ НомД ║ A3* ║

2 ║ Наим ║ A12 ║

3 ║ Цвет ║ A10 ║

4 ║ Вес ║ S ║

5 ║ Город ║ A15 ║

S

Таблица SP:

НомП

НонД

Колич

П1

Д3

4

П1

Д4

12

П1

Д5

45

П1

Д7

278

П1

Д8

97

П1

Д9

300

П10

Д1

34

П10

Д12

56

П10

Д13

98

П10

Д7

100

П2

Д10

35

П2

Д11

67

П2

Д14

23

П2

Д15

65

П2

Д4

378

П3

ДЗ

45

П3

Д4

12

П3

Д5

88

П4

Д2

54

П6

Д1

35

П7

Д11

98

П7

Д12

78

П8

Д7

76

П9

Д7

35

П9

Д8

300

TR_SP═╦════════Field Name═╦Field Type╗

1 ║ НомП ║ A3* ║

2 ║ НомД ║ A3* ║

3 ║ Колич ║ S ║

STR_SPO═╦══════Field Name══╦Field Type╗

1 ║ НомЗ ║ S* ║

2 ║ НомП ║ A3* ║

3 ║ НомД ║ A3* ║

4 ║ Колич ║ S ║

5 ║ Дата ║ D ║

Таблица Р:

НонД

Наин

Цвет

Вес

Город

Д1

Корпус

Серый

15

Калининград

Д10

Дрель

Синий

6

Рязань

Д11

Шкив

Черный

12

Киев

Д12

Вал

Черный

12

Киев

Д13

Фреза

Серый

1

Киев

Д14

Пила

Серый

2

Тула

Д15

Зубило

Черный

3

Тула

Д2

Каркас

Черный

10

Калининград

ДЗ

Редуктор

Красный

57

Москва

Д4

Стол

Желтый

20

Москва

Д5

Стул

Желтый

6

Москва

Д6

Молоток

Черный

2

Рязань

Л7

Верстак

Серый

45

Казань

Д8

Рубанок

Черный

1

Казань

Д9

Мотор

Красный

88

Казань

Таблица SPO:

НомЗ

НомП

НомД

Колич

Дата

1

П1

Д16

4

15.10.92

Таблица S:

НомП

ИмяП

Статус

Город

П1

База1

40

Москва

П10

База10

15

Рязань

П2

База2

15

Казань

ПЗ

База3

10

Киев

П4

База4

30

Калининград

П5

База5

5

П6

База6

20

Тула

П7

База7

40

Москва

П8

База8

30

Калининград

П9

База9

40

Москва

1

П1

Д5

45

15.10.92

1

П1

Д9

300

15.10.92

1

П10

Д13

98

15.10.92

1

П10

Д5

40

15.10.92

1

П2

Д14

23

10.10.92

2

П1

Д7

278

15.10.92

2

П10

Д7

100

10.10.92

2

П2

Д11

80

10.10.92

2

П2

Д15

65

10.10.92

2

П2

Д4

378

10.10.92

3

П3

ДЗ

45

23.09.92

3

П3

Д4

10

23.09.92

3

П6

Д1

35

23.09.92

3

П7

Д11

98

23.09.92

4

П7

Д12

78

28.09.92

4

П8

ДЗ

76

28.09.92

4

П9

Д7

35

28.09.92

4

П9

Д8

250

28.09.92

1) Получить номера поставщиков, поставляющих детали.

SP════╦════════НомП══════╦════════НомД══════╦══════Колич══════╗

║√ ║ ║ ║

ANSWER═╦═НомП═╗

1 ║ П1 ║

2 ║ П10 ║

3 ║ П2 ║

...

В Answer записи отсортированы по НомП.

Для включения в результат дублирующих записей вместо F6 необходимо нажать Alt F6 (Check Plus). В форме запроса появится знак √+. Answer будет включать дубликаты записей и не будет сортироваться.

2) Включение дубликатов и переименование полей.

SP════╦════════НомП══════╦════════НомД══════╦══════Колич══════╗

║√+ as "ALL" ║ ║ ║

ANSWER═╦═ALL══╗

1 ║ П1 ║

2 ║ П1 ║

3 ║ П1 ║

4 ║ П1 ║

5 ║ П1 ║

6 ║ П1 ║

7 ║ П10 ║

...

Записи в Answer обычно сортируются в возрастающем порядке. Для сортировки

по убыванию вместо F6 нужно использовать Ctrl F6. При этом в форме запроса появится √▼ (Check Descending).

3) Группировка по первому полю и сортировка по убыванию второго поля.

SP════╦════════НомП══════╦════════НомД══════╦══════Колич══════╗

║√ ║ ║√▼ ║

ANSWER═╦═НомП═╦══Колич══╗

1 ║ П1 ║ 300 ║

2 ║ П1 ║ 278 ║

3 ║ П1 ║ 97 ║

4 ║ П1 ║ 45 ║

5 ║ П1 ║ 12 ║

6 ║ П1 ║ 4 ║

7 ║ П10 ║ 100 ║

...

Соседние файлы в папке Uchpos