Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapytanie krzyżowe
Forum PHP.pl > Forum > Bazy danych > MySQL
Quoszek
Mam do dyspozycji 2 tabele :

1 tabela "Przedmioty"
+--------------+-----------------+
| Nrprzedmiotu | Nazwaprzedmiotu |
+--------------+-----------------+
| 1 | Polski |
| 2 | Historia |
| 3 | Matematyka |
| 4 | Fizyka |
| 5 | WF |
+--------------+-----------------+

2 tabela "Stopnie" opisze ja gdyz tabela jest ogromna zawiera 1200 rekordow , w kazdym razie sklada sie z 4 kolumn
Nrucznia, NrStopnia , Nrprzedmiotu , Ocena.

Zadanie jest bardzo proste lecz niestety nie wiem jak sie za nie zabrać : Chcialbym utworzyc tabele ktora zawiera 6 kolumn : Nrucznia, Polski , Historia , Matematyka , Fizyka , WF w tabelach od 2 do 6 ma sie znajdowac srednia z danego przedmiotu .


Z gory dziekuje za pomoc.
wookieb
Poproszę na PW poprawną nazwę tematu a temat otworzę.
"Jak to napisać?" nic nie mówi.

// Otwieram
Noidea
Najprościej będzie pobrać te dane z tabeli "stopnie" grupując po dwóch kolumnach (Nrucznia i Nrprzedmiotu):
  1. SELECT Nrucznia, Nrprzedmiotu, AVG( Ocena ) AS ocena_srednia
  2. FROM Stopnie
  3. GROUP BY Nrucznia, Nrprzedmiotu


do tego dwa JOINy, żeby zamienić numerki uczniów i przedmiotów na czytelne dane. Niestety wynik nie będzie w takim formacie, jakbyś tego chciał, tylko:
Kod
+--------+------------+-------------+-----------------+
|  Imie  |  Nazwisko  |  Przedmiot  |  Ocena_srednia  |
+--------+------------+-------------+-----------------+
|  Jan   |   Nowak    |   Polski    |     4.3422      |
|  Jan   |   Nowak    | Matematyka  |     5.0000      |
|  Jan   |   Nowak    |     WF      |     4.1234      |
|  Ania  |  Kowalska  |   Polski    |     3.3333      |
|  Ania  |  Kowalska  | Matematyka  |     2.3456      |
|  Ania  |  Kowalska  |     WF      |     5.6789      |



Natomiast żeby osiągnąć taki format wyniku, jaki tobie się zamarzył, to trzeba JOINować podzapytania:
- Pobierz średnie oceny z polskiego uczniów
- Pobierz średnie oceny z matematyki uczniów
- Pobierz średnie oceny z WFu uczniów
- ...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.