Создание базы данных "Киностудии", страница 4

3. Для заданных значений имени и адреса человека возвратить значение 1, если тот является актером, но не руководящим лицом, 2 – если человек является руководителем, но не относится к числу актеров. Если человека с указанным и адресом нет ни в когорте актеров, ни в обойме руководителей.

select *;

from people into cursor cur;

where people.фамилия = thisform.combo1.value;

        AND not(thisform.combo1.value == "");

if not(thisform.combo1.value == "")

if (people.актерство = "да" and people.руководительство = "нет")     

      messagebox("1 - актер, но не руководитель")   

endif 

if (people.актерство = "нет" and people.руководительство = "да")      

      messagebox("2 - руководитель, не актер")

endif

if (people.актерство = "нет" and people.руководительство = "нет")     

      messagebox("3 - ни руководитель, ни актер")   

endif

endif

Рис. 41.Результат работы запроса №3.

4. Для заданного имени актера найти и возвратить значение года выпуска самого раннего из кинофильмов продолжительностью свыше 120 минут с участием этого актера.

SELECT  people.фамилия, films.название, year(min(films.дата_выпуска)), films.продолжительность;

FROM  Kino_base!films, Kino_base!people, Kino_base!actors;

WHERE people.фамилия = thisform.combo1.value;

      AND people.id_ppl = actors.id_ppl;

      AND films.id_film = actors.id_film;

 AND films.продолжительность > 120;

Рис. 42.Результат работы запроса №4

5. Найти адрес заданной киностудии.

SELECT  studies.название, studies.адрес;

FROM studies;

WHERE studies.название = thisform.list1.value;

Рис. 43.Результат работы запроса №5

6. Определить дату рождения заданной актрисы.

SELECT  people.фамилия, people.дата_рождения;

FROM Kino_base!people;

WHERE people.фамилия = thisform.text1.value;

      AND people.пол = "Ж";

AND people.актерство = "да"

Рис. 44.Результат работы запроса №6

7. Найти, кто обладает годовым доходом в размере не менее 50000 (ввод любого значения).

SELECT  people.фамилия, people.годовой_доход;

FROM Kino_base!people;

WHERE people.годовой_доход >= thisform.text1.value;

Рис. 45.Результат работы запроса №7

8. Найти всех актеров, каждый из которых снимался либо в фильме, выпущенном в заданном году (задается год), либо в фильме (ввод названия фильма).

SELECT  people.фамилия, films.название, films.дата_выпуска;

FROM  Kino_base!films, Kino_base!people, Kino_base!actors;

WHERE people.id_ppl = actors.id_ppl;

      AND films.id_film = actors.id_film;

      AND (films.название = thisform.combo2.value;

OR year(films.дата_выпуска) = thisform.text1.value)

Рис. 46.Результат работы запроса №8

9. Найти информацию обо всех руководителях, обладающих совокупным годовым доходом в размере не менее 100000 (ввод любого значения).

messagebox("Президенты киностудий:")

SELECT  people.фамилия, people.имя, people.отчество,;

      people.дата_рождения, people.годовой_доход, studies.название;

FROM people,studies ;

WHERE people.годовой_доход >= thisform.text1.value;

      AND people.руководительство = "да";

      AND people.id_ppl = studies.id_presid

messagebox("Продюсеры фильмов:")

SELECT  films.название, people.фамилия, people.имя, people.отчество,;

      people.дата_рождения, people.годовой_доход;

FROM people,films ;

WHERE people.годовой_доход >= thisform.text1.value;

      AND people.руководительство = "да";

      AND people.id_ppl = films.id_prod

Рис. 48 .Результат работы запроса №9