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

                            ?           

                            SELECT type_anticvariata.Тип_антиквариата AS Тип_антиквариата, anticvariat.Наименование AS Наименование,;

                            anticvariat.Цена_руб AS Цена;

                            FROM myrgr!type_anticvariata INNER JOIN myrgr!anticvariat;

                            ON  type_anticvariata.id_тип_антиквариата = anticvariat.id_тип_антиквариата;

                            WHERE цена_руб == cur12.max_цена_руб

              CASE this.parent.comboperiod.value = "год"

                            ?           

                            SELECT type_anticvariata.Тип_антиквариата AS Тип_антиквариата, anticvariat.Наименование AS Наименование,;

                            anticvariat.Цена_руб AS Цена;

                            FROM myrgr!type_anticvariata INNER JOIN myrgr!anticvariat;

                            ON  type_anticvariata.id_тип_антиквариата = anticvariat.id_тип_антиквариата;

                            WHERE цена_руб == cur13.max_цена_руб

ENDCASE

Рис.18 Результат запроса за последний квартал.

Рис.19 Результат запроса за последний год.

Код поиска самого дешёвого антиквариата:

SELECT MIN(цена_руб);

FROM myrgr!anticvariat;

WHERE month(anticvariat.дата_продажи_фирмой) between (month(DATE()) - 4) and month(DATE());

AND year(anticvariat.дата_продажи_фирмой) == year(DATE());

INTO CURSOR cur14

SELECT MIN(цена_руб);

FROM myrgr!anticvariat;

WHERE year(anticvariat.дата_продажи_фирмой) == year(DATE());

INTO CURSOR cur15

DO CASE

              CASE this.parent.comboperiod.value = "квартал"

                            ?           

                            SELECT type_anticvariata.Тип_антиквариата AS Тип_антиквариата, anticvariat.Наименование AS Наименование,;

                            anticvariat.Цена_руб AS Цена;

                            FROM myrgr!type_anticvariata INNER JOIN myrgr!anticvariat;

                            ON  type_anticvariata.id_тип_антиквариата = anticvariat.id_тип_антиквариата;

                            WHERE цена_руб == cur14.min_цена_руб

              CASE this.parent.comboperiod.value = "год"

                            ?           

                            SELECT type_anticvariata.Тип_антиквариата AS Тип_антиквариата, anticvariat.Наименование AS Наименование,;

                            anticvariat.Цена_руб AS Цена;

                            FROM myrgr!type_anticvariata INNER JOIN myrgr!anticvariat;

                            ON  type_anticvariata.id_тип_антиквариата = anticvariat.id_тип_антиквариата;

                            WHERE цена_руб == cur15.min_цена_руб

ENDCASE

Рис.20 Результат запроса за последний квартал.

Рис.21 Результат запроса за последний год.

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

SELECT type_anticvariata.тип_антиквариата, anticvariat.наименование AS наименование, anticvariat.место_издания AS место_издания,;

anticvariat.цена_руб AS цена_руб; 

FROM myrgr!anticvariat INNER JOIN myrgr!type_anticvariata;

ON  type_anticvariata.id_тип_антиквариата = anticvariat.id_тип_антиквариата;

WHERE anticvariat.место_издания = thisform.pageframe1.page3.combo3.value;

AND anticvariat.цена_руб BETWEEN thisform.pageframe1.page3.text5.value AND thisform.pageframe1.page3.text6.value;

ORDER BY anticvariat.цена_руб, anticvariat.наименование

Рис.22 Запрос пятый.

Рис.23 Результат запроса.


Четвертая вкладка Поиск по БД 2, представленная на рис.24.

Рис.24 Главная форма. четвертая вкладка.

Данная вкладка позволяет пользователю выполнять различные запросы, такие как:

6) Найти долю антиквариата, проданного за определенный период от общего времени

Код запроса:

LOCAL count1[1]

LOCAL count2[1]