Witam, na początku napiszę co chcę osiągnąć.
Mam w tabeli 'student' kilka pól opisujących daną osobę (imię, nazwisko, wiek, ...), z których teraz najważniejsze jest to, które opisuje szkoły do jakich dana osoba chodziła. Podobnie sprawa ma się do naszj-klasy. Chcę zliczyć ilość wystąpień danej szkoły i wyświetlić ranking szkół, do której chodziło najwięcej osób. Gdyby było jedno pole, użyłbym COUNT i bym zliczył, jednak każda osoba może dopisać kilka szkół, stworzyłem więc 3 pola - 'szkoła1', 'szkoła2', 'szkoła3'. Użyłem COUNT i UNION, byłoby dobrze gdyby jednak rekordy powtarzające się we wszystkich polach były dodawane do siebie i wyświetlana suma z trzech pól, a nie dla każdego oddzielnie. Tutaj utknąłem. Pomyślałem teraz, że może lepszym rozwiązaniem będzie utworzenie kolejnej tabeli 'szkoły', a w niej 'id', 'id_studenta', 'nazwa_szkoły' i dalej kombinować. I pytanie do was, które rozwiązanie będzie lepsze? Może jest jeszcze inny sposób na to? Jak zliczyć ilość wystąpień danej szkoły?
Piszę to w tym dziale ponieważ chciałbym przy tym pobraniu ilości uniknąć maksymalnie kodu PHP i jeśli możliwe wykonać jednym zapytaniem do bazy.