Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 566 Pomógł: 35 Dołączył: 21.06.2006 Ostrzeżenie: (0%)
|
Witajcie!
Zastanawiam się w jaki sposób phpMyAdmin "wie", że będzie następna strona w wynikach? Staram się zrobić dobrą paginację bez uciekania się do zastąpienia pól za pomocą COUNT(`id`) - wymusza to na mnie podwójne wykonanie zapytania, raz na całości [która może mieć i 80 tys rekordów] a drugi raz już z limitem. Do tego problem stwarzają skomplikowane zapytania (których wyniki są jednak cachowane). |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%)
|
Jeśli robisz prostą przeglądarkę tabel (bez połączeń z innymi tabelami i bez warunków), to z:
SELECT * FROM information_schema.tables WHERE table_schema = 'twoja_baza_danych' and table_name='twoja_tabela' możesz wyciągnąć podstawowe informacje jak. np. ilość rekordów (TABLE_ROWS), tylko że dla InnoDB są to wartości przybliżone... Więc tak naprawdę nie ma innego sposobu jak liczenie najpierw... |
|
|
|
kiler129 Przewidzenie paginacji bez odpalania całego zapytania 4.07.2012, 04:59:31
!*! CytatStaram się zrobić dobrą paginację bez uciekan... 4.07.2012, 12:20:10
d3ut3r jest jeszcze:
SQL_CALC_FOUND_ROWS
jednak nie zaw... 4.07.2012, 12:43:54
maly_swd To sie robi troche inaczej.
Zalozenie ze na stron... 4.07.2012, 15:44:15
Adi32 Lekka przesada.
Ja jestem za tradycyjnym count(id)... 5.07.2012, 14:12:22
hind z tego co mi wiadomo to count nie zlicza wartości ... 5.07.2012, 14:49:57
rzymek01 zróbcie sobie testy wydajności zapytania count(id)... 5.07.2012, 14:55:05
Adi32 Cytat(hind @ 5.07.2012, 15:49:57 ) z ... 5.07.2012, 15:06:16 
mmmmmmm Cytat(Adi32 @ 5.07.2012, 16:06:16 ) P... 5.07.2012, 15:10:33
!*! CytatPrzy LEFT/RIGHT JOINie może być
Hm podaj jaki... 5.07.2012, 15:18:29
Adi32 Jemu chyba chodziło o to, że jeżeli w zapytaniu w ... 5.07.2012, 15:24:40 ![]() ![]() |
|
Aktualny czas: 20.12.2025 - 16:01 |