Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] policzenie ilosci rekordow?
AndyPSV
post
Post #1





Grupa: Zarejestrowani
Postów: 393
Pomógł: 5
Dołączył: 6.02.2003
Skąd: The.Luciferian.Doctrine.p
df

Ostrzeżenie: (30%)
XX---


tak se myslalem

chodzi o to, ze mam tabele, niech bedzie REKORDY
w tabeli tej, mam dane o kategoriach

ID T C0 C1
1 moj_tytul 1/10 2/20

teraz, chce wyciagnac wszystkie rekordy, ktore maja T LIKE "%zmienna%"

jak teraz w tym momencie policzyc wszystkie rekordy; musze pobrac kazdy rekord, zsumowac ich ilosc, a nastepnie pobrac nazwe KATEGORII z oddzielnej tabeli czy jak to zrobic?

jak to jest zrobione na allegro albo ebayu?
nie wywali sie baza jak bedzie np. 1 mln rekordow?
jak to rozwiazac?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Taaa waqmaz... I pobranie z bazy miliona rekordów, by sobie to potem php policzył PO przesłaniu tych milionów jest super wydajne (IMG:style_emoticons/default/winksmiley.jpg) Nawet localhost może się wysypać z pamięcią jeśli to będą duże tabele. Albo count(klucz_primary) albo SQL_CALC_FOUND_ROWS bo każda inna wersja odwali taką jazdę, że głowa Cię rozboli. Na chłopski rozum... Mieszkasz w Polsce i chcesz wiedzieć ile słoni jest w Afryce. Ściągasz je wszystkie do Polski i liczysz, czy każesz sobie przesłać od razu ich liczbę? Twój kod waqmaz każe zrobić to pierwsze (IMG:style_emoticons/default/biggrin.gif)

AndyPSV... Tabela produktów JOIN z tabelą kategorii (może być poprzez tabelę złączeniową ) z warunkiem where i group by po id kategorii. Do tego w select robisz count(id_produktu). Ale oczywiście wszystko zależy od struktury tabel. Ja tylko zgaduję (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 4.10.2025 - 17:14