Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][php]wyświetlanie danych z bazy
Forum PHP.pl > Forum > Przedszkole
limonka
Cześć!

Stoję przed problemem generowania strony na podstawie zawartości bazy danych.
Ponieważ baza będzie dość duża - około 30 tys. rekordów potrzebuję optymalnego rozwiązania, ewentualnie naprowadzenia mnie na odpowiedni tok rozumowania.
Baza przedstawia się następująco:
  1. ID, TYP, ILOSC_A...ILOSC_Z


TYP może mieć tą samą wartość dla różnego ID. Prawdopodobnie będzie około 50 różnych TYPów.
Chciałbym stworzyć stronę, która wyświetla TYP (tutaj będzie forma graficzna/tekstowa) jeśli suma ILOSC_A do ILOSC_Z jest większa od 0 dla dowolnego ID.
Następnie pod TYP wyświetla sumę ILOSC_A dla wszystkich ID o podanym TYP. Analogicznie aż do ILOSC_Z.

Każde sugestie mile widziane.
Dzięki.
nospor
z czym masz konkretnie problem? Z sumowaniem wartosci czy z czyms innym?

I czemu te pola iloscA...iloscZ? Co to sa za pola i czemu sluza?
limonka
Cytat(nospor @ 12.07.2016, 15:23:17 ) *
z czym masz konkretnie problem? Z sumowaniem wartosci czy z czyms innym?


Problem dotyczy koncepcji pod kątem najlepszego zoptymalizowania zapytania.

Czy lepiej na początku wylistować wszystkie możliwości TYP a potem robić sumę ILOSC_A do ILOSC_Z dla wszystkich TYP danego rodzaju?
Czy też może zrobić sumy ILOSC_A do ILOSC_Z dla każdego rekordu, a następnie zająć się wyłuskaniem TYP dla niezerowych sum, następnie je wyświetlić?


Cytat(nospor @ 12.07.2016, 15:23:17 ) *
I czemu te pola iloscA...iloscZ? Co to sa za pola i czemu sluza?


Przykładowe dane:
  1. ID NAZWA ILOSC_A ILOSC_B ILOSC_C
  2. 1 KOT 1 0 0
  3. 2 KOT 0 0 0
  4. 3 PIES 0 0 0
  5. 4 PIES 0 0 0
  6. 5 PTAK 0 0 1


ILOSC_X jest to liczba elementów o konkretnej konfiguracji danego ID (np. KOT o ID 1 - CZARNY, BIAŁY, BRĄZOWY).
trueblue
Cytat(limonka @ 13.07.2016, 10:04:41 ) *
Czy lepiej na początku wylistować wszystkie możliwości TYP a potem robić sumę ILOSC_A do ILOSC_Z dla wszystkich TYP danego rodzaju?
Czy też może zrobić sumy ILOSC_A do ILOSC_Z dla każdego rekordu, a następnie zająć się wyłuskaniem TYP dla niezerowych sum, następnie je wyświetlić?

Czy w pierwszym przypadku będą wybrane rekordy tylko dla jednego rodzaju TYP?
Jeśli tak, to jest to lepsze rozwiązanie - już na wstępie ograniczasz liczbę rekordów.

Nie znam dokładnie specyfiki Twojej aplikacji/bazy danych, ale chyba lepszym rozwiązaniem byłoby przechowywanie atrybutów w odrębnej tabeli i powiązanie tabeli elementów z tą tabelą poprzez tabelą przejściową (relacja wiele do wielu, w tabeli przechowywana ilość atrybutu).
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.