Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 56 Pomógł: 0 Dołączył: 18.01.2009 Ostrzeżenie: (0%)
|
Witam,
mam bazę 4 GB i chce pobrać losowy rekord spełniające moje kryteria. Teraz mam zastosowanie: Select pole FROM tabela WHERE pole='1' ORDER BY RAND(); LIMIT 1 Ale wykorzystując RAND() zapytanie trwa bardzo długo, przy dużych bazach nie spełnia roli. W jaki sposób wy wyciągacie losowe rekordy w takich dużych bazach? Z góry dziękuje za pomoc |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 54 Pomógł: 12 Dołączył: 4.08.2007 Ostrzeżenie: (0%)
|
Panowie, ale pamiętacie, że autor nie potrzebuje losowego wiersza z tabeli, tylko losowego wiersza spełniającego jakiśtam warunek?
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%)
|
Panowie, ale pamiętacie, że autor nie potrzebuje losowego wiersza z tabeli, tylko losowego wiersza spełniającego jakiśtam warunek? Tylko nie wiadomo, co to za warunek, więc teraz mógłbym jedynie zgadywać (musiałbym mieć więcej szczegółów), ale rzeczywiście przy odpowiednim warunku moje ostatnie rozwiązanie może nie zadziałać zawsze. Jeżeli pominiemy ten warunek, rozwiązanie działa. |
|
|
|
lysy2005 [PHP][MYSQL] LOSOWY REKORD 18.06.2011, 12:48:03
matino Tutaj masz bardzo przydatny link: http://net.tutsp... 18.06.2011, 12:56:11
lysy2005 Cytat(matino @ 18.06.2011, 13:56:11 )... 18.06.2011, 13:11:06
Hpsi+ Aż mi sie nie chce wierzyć że:
[SQL] pobierz, pla... 18.06.2011, 13:17:25 
webdice Cytat(Hpsi+ @ 18.06.2011, 14:17... 18.06.2011, 14:32:39
lysy2005 Cytat(Hpsi+ @ 18.06.2011, 14:17... 18.06.2011, 13:43:52
Speedy Możesz zrobić tak:
[SQL] pobierz, plaintext SELEC... 18.06.2011, 14:54:24
#luq Co Wy z tym WHERE id = xxx?
Przecież można:
[SQL]... 18.06.2011, 15:59:48 
Speedy Cytat(#luq @ 18.06.2011, 16:59:48 ) C... 19.06.2011, 20:09:23
lysy2005 Cytat(#luq @ 18.06.2011, 16:59:48 ) @... 19.06.2011, 17:09:18
aachi Może rozbij tablice na kilkanaście mniejszych. Nie... 19.06.2011, 17:35:00
Fifi209 Fajnie jakbyś pokazał strukturę tej tabeli lub naw... 19.06.2011, 20:36:07
vokiel Wybaczcie link do bloga, ale kiedyś o tym pisałem,... 19.06.2011, 20:56:24 
aachi Cytat(vokiel @ 19.06.2011, 20:56:24 )... 19.06.2011, 21:15:32
by_ikar Dobrym rozwiązaniem byłoby zastosowanie cron'a... 20.06.2011, 09:16:55 
uupah5 coraz ciekawsze pomysły:
rozbijanie tabeli na wiel... 20.06.2011, 09:49:40 
by_ikar Cytat(uupah5 @ 20.06.2011, 10:49:40 )... 20.06.2011, 16:59:57 
uupah5 Cytat(by_ikar @ 20.06.2011, 17:59:57 ... 20.06.2011, 22:28:44
thek Ja osobiście kombinowałbym także pod kątem:
Zlicz ... 20.06.2011, 14:15:08 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 14:52 |