Połączenie trzech kwerend

Połączenie trzech kwerend
B9
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 66
0

Hej. Mam pytanie. Robiąc zadanie maturalne 5.5 (link poniżej) użyłem aż 3 kwerend, żeby zrobić wszystko formalnie, nie używając kalkulatora. Uczę się dopiero jeden dzień SQL i nie znam odpowiedzi na pytanie czy można umieścić to wszystko w jednej kwerendzie?

  1. Kopiuj

SELECT COUNT(*) AS WypożyczeniaPrzezStudentówZAkademika
FROM (SELECT DISTINCT tytul, id_pok FROM wypozyczenia, meldunek WHERE wypozyczenia.pesel = meldunek.pesel);

Kopiuj


2. ```
SELECT COUNT(*) AS WypożyczoneNiePrzezOsobyZAkademika
FROM studenci INNER JOIN wypozyczenia ON wypozyczenia.pesel = studenci.pesel
WHERE studenci.pesel NOT IN(SELECT pesel FROM meldunek);
  1. Kopiuj

SELECT WypożyczeniaPrzezStudentówZAkademika+WypożyczoneNiePrzezOsobyZAkademika
FROM Kwerenda5, Kwerenda5a;

Kopiuj
Problem tego zadania jest taki że w pierwszej kwerendzie policzyłem książki na jeden pokój przez studentów akademika, w drugiej książki wypożyczone przez osoby nie z akademika. Zsumowałem je i wyszło że 316 książek (jak w odpowiedziach) byłoby wypożyczonych, zamiast 325, ponieważ miałem zrobić tak żeby w danym pokoju nie powtarzał się ten sam tytuł. 

https://cke.gov.pl/images/_EGZAMIN_MATURALNY_OD_2015/Arkusze_egzaminacyjne/2016/formula_od_2015/MIN-R2_1P-162.pdf

Kopiuj

Z góry dzięki za pomoc.
Marcin.Miga
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2794
1

Zadanie jest prostsze niż ci się wydaje. Musisz tylko policzyć liczbę unikalnych par (tytuł, numer_pokoju)

B9
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 66
0

No tak to zrobiłem w pierwszej kwerendzie. Wtedy wychodzi 311 i jest to wynik za 1pkt. Muszę pamiętać że 5 osób wypożyczyło książki, ale nie mieszka w akademiku i wtedy wynik jest równy 316 za max pkt.

PS
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

Ja to zrobiłem w excelu i wyszło dobrze, łap link

https://files.fm/f/bcrb7jvw

B9
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 66
0

Wiadome, w excelu też da rade szybko to zrobić. Choć jestem pod wrażeniem że używasz "weź dane z tabeli" mnie to strasznie irytuje ^^.

PS
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

Excel mi automatycznie wstawił tą funkcję gdy zaznaczyłem dane na tabeli przestawnej :P

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.