26

Odp: SQL - INFO O STUDENTACH

Napisałem coś taiego panowie, teraz zastanawiam się nad wyciągnieciem średniej z calego roku jakie będzie to zapytanie oraz średniej z danego semestru.

INSERT INTO `STUDENT` VALUES (1, 'Abacki', 'Marcin');
INSERT INTO `STUDENT` VALUES (2, 'Babacki', 'Zosia');
INSERT INTO `STUDENT` VALUES (3, 'Cabacki', 'Edwart');
INSERT INTO `STUDENT` VALUES (4, 'Dabacki', 'Grzegorz');
INSERT INTO `STUDENT` VALUES (5, 'Ebacki', 'Wacław');
INSERT INTO `STUDENT` VALUES (6, 'Fabacki', 'Jan');







INSERT INTO `OCENY` VALUES (11, 1, 1, 3.11);
INSERT INTO `OCENY` VALUES (22, 2, 2, 4.34);
INSERT INTO `OCENY` VALUES (33, 3, 3, 5,00);
INSERT INTO `OCENY` VALUES (44, 4, 4, 2.65);
INSERT INTO `OCENY` VALUES (55, 5, 5, 2,34);
INSERT INTO `OCENY` VALUES (66, 6, 6, 4,54);





INSERT INTO `SEMESTR` VALUES (1, 1);
INSERT INTO `SEMESTR` VALUES (2, 2);
INSERT INTO `SEMESTR` VALUES (3, 3);
INSERT INTO `SEMESTR` VALUES (4, 4);
INSERT INTO `SEMESTR` VALUES (5, 5);
INSERT INTO `SEMESTR` VALUES (6, 6);

Ostatnio edytowany przez Dr. Ma (2009-11-19 09:14:50)

27

Odp: SQL - INFO O STUDENTACH

Komuś tu się chyba nie chce poczytać jakiejś dokumentacji do sql (postgresa) smile
Próbowałeś sam rozwiązać to zadanie? Co wymyśliłeś?

28

Odp: SQL - INFO O STUDENTACH

Dla wszystkich studentów to bym zrobił tak:

select avg(srednia)
form OCENY INNER JOIN SEMESTR
on OCENY.srednia = SEMESTR.nr_semestru

Ostatnio edytowany przez Dr. Ma (2009-11-19 12:33:21)

29

Odp: SQL - INFO O STUDENTACH

select avg(srednia) from oceny where id_indeksu=1 and id_semestru in (1,2);

30

Odp: SQL - INFO O STUDENTACH

Witam,

Pisze mając na myśli studentów i ich średnią z całego toku studiów, czyli jaką mają wszyscy dotychczasowi strudenci średnią ze wszystkich lat.

31

Odp: SQL - INFO O STUDENTACH

No to będzie jeszcze prostsze.

select avg(srednia) from oceny group by id_indeksu

Ponieważ nie przechowujesz samych ocen tylko średnie więc musisz wziąć średnią ze średnich.