Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Najbardziej optymalne zapytanie
bambam
post 5.01.2012, 23:31:52
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 4.09.2011

Ostrzeżenie: (0%)
-----


Witam, mam następujące pytanie. Posiadam baze danych w której docelowo bedzie znajdowalo wiele danych. Głównie chodzi mi o produkty, jak narazie mam ich około 300 tysiecy lecz to tylko z jednego xml'a testowego. Docelowo bedzie ich około 10 milionów i tu powstaje problem nastepujący. Mój klient zazyczył sobie jego wzór xml'i z produktami które bedą importowane do bazy. Tabela z produktami wyglada następująco :

id, nazwa, ..(tutaj reszte niezbednych kolumn)....., grupa

i własnie rozchodzi się o kolumnę 'grupa' która zawiera kod grupy do której należy produkt czyli podkategorii. Wygląda on następująco dla przykładu 'GHG-RRR'

Tabela z podkategoriami wyglada nastepująco :

id, id_rodzica, grupa, nazwa_wlasciwa(np. płyty główne)

Tabela z nazwami właściwymi kategorii zawiera wylacznie id i nazwe wlasciwa głównych kategorii czyli id_nazwa


i teraz chce pobierac sobie wszystkie produkty należące do kategori głównej np. Komputery czyli muszę zebrac wszystkie pola 'grupa' z tabeli podkategorie gdzie id_rodzica = id dla Komputery z tabeli wlasciwej nazw głównych kategorii a nastepnie po zebraniu wszystkich 'grup` czyli bedzie tego wynikiem np. array('KCK-ADG', 'RAM-DIM, 'HDD-SAT'),
muszę pobrac z tabeli produkty wszystkie produkty ktore w polu grupa zawieraja takie wartosci, i teraz pytanie jak to zrobić naoptymalniej przy takiej ilosci produktow ? i czy te tabele sa dobrze zaprojektowane ?

zrobiłem taki klucz

ALTER TABLE pod_kategorie
ADD FOREIGN KEY (id_rodzica)
REFERENCES kategorie (id)


co odzwierdziedla przypasowanie nazw podkategorii do nazwy kategorii głowiej, lecz szczerze nie wiem co dalej poczynic, nie mam problemu z pobraniem tych produktow na podstawie tych danych lecz nie jest to optymalne moim sposobem napewno i nie jest to zrobione jak powinno byc jak ma byc szczery. Proszę was o poradę i z góry dziekujęza pomoc.








Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 09:08