Thread View: pl.comp.lang.php
9 messages
9 total messages
Started by Averne
Thu, 30 Aug 2001 12:01
Losowy rekord...
Author: Averne
Date: Thu, 30 Aug 2001 12:01
Date: Thu, 30 Aug 2001 12:01
1 lines
910 bytes
910 bytes
Jak w PHP wybrac losowo rekord z konkretnej tabeli w bazie danych MySQL ?
Re: Losowy rekord...
Author: Darek Sieradzki
Date: Thu, 30 Aug 2001 12:11
Date: Thu, 30 Aug 2001 12:11
20 lines
1516 bytes
1516 bytes
"Averne" <averne@averne.eu.org> wrote in news:9ml9u0$9eh$1@news.tpi.pl:
> Jak w PHP wybrac losowo rekord z konkretnej tabeli w bazie danych MySQL ?
a) wykonac zapytanie
b) pobrac liczbe zwroconych rekordow
c) wylosowac liczbe z zakresu 0, liczba_rekordow-1
d) pobrac rekord o wylosowanym numerze.
Moze jest jakies sprytne zapytanie pozwalajace od razu zwrocic losowy
rekord, ale to zdecydowanie NTG.
DS
--
.---------
(-- a dny jak padli andele prsty ryji hlinu --. .
` `-- a dni jak upadle anioly palcami ryja ziemie --)
---------'
http://www.dago.pmp.com.pl
Re: Losowy rekord...
Author: Marcin Nowak
Date: Thu, 30 Aug 2001 16:05
Date: Thu, 30 Aug 2001 16:05
10 lines
1088 bytes
1088 bytes
Averne wrote: > Jak w PHP wybrac losowo rekord z konkretnej tabeli w bazie danych MySQL ? > > > select * from nazwa_tabeli order by random limit 1 ^^^ tutaj nigdy nie wiem czy to random czy random() czy randomize musisz poprobowac...
Re: Losowy rekord...
Author: Averne
Date: Thu, 30 Aug 2001 17:24
Date: Thu, 30 Aug 2001 17:24
13 lines
1216 bytes
1216 bytes
> Averne wrote: > > Jak w PHP wybrac losowo rekord z konkretnej tabeli w bazie danych MySQL ? > > > > > > > > > select * from nazwa_tabeli order by random limit 1 > ^^^ tutaj nigdy nie wiem czy to > random czy random() czy randomize musisz poprobowac... > Dziki wielke mistrzu :)
Re: Losowy rekord...
Author: Mariusz Mielnik
Date: Fri, 31 Aug 2001 10:52
Date: Fri, 31 Aug 2001 10:52
21 lines
1289 bytes
1289 bytes
Dnia Thu, 30 Aug 2001 18:05:49 +0200, Marcin Nowak <nowy@korba.pl> wystukal(a): >Averne wrote: >> Jak w PHP wybrac losowo rekord z konkretnej tabeli w bazie danych MySQL ? >> >> >> > > >select * from nazwa_tabeli order by random limit 1 > ^^^ tutaj nigdy nie wiem czy to >random czy random() czy randomize musisz poprobowac... ORDER BY RAND() ================ Mariusz Mielnik www.flashzone.pl ================
Re: Losowy rekord...
Author: Mariusz Mielnik
Date: Fri, 31 Aug 2001 11:04
Date: Fri, 31 Aug 2001 11:04
28 lines
1653 bytes
1653 bytes
Dnia Thu, 30 Aug 2001 12:11:45 +0000 (UTC), Darek Sieradzki <dsier@MAPS-ONpmp.com.pl> wystukal(a): >"Averne" <averne@averne.eu.org> wrote in news:9ml9u0$9eh$1@news.tpi.pl: > >> Jak w PHP wybrac losowo rekord z konkretnej tabeli w bazie danych MySQL ? > >a) wykonac zapytanie >b) pobrac liczbe zwroconych rekordow >c) wylosowac liczbe z zakresu 0, liczba_rekordow-1 >d) pobrac rekord o wylosowanym numerze. > owszem jezeli masz id masz pokolei jezeli nie to lipa... - pobierasz wszytkie ID, - wrzucasz do tablicy asocjacyjnej nr id, - zliczasz elementy w tablicy, - losujesz jeden albo kilka jak chcesz... - pozniej podajesz wartosc elementu w zapytaniu sql (czy nr ID) i problem z glowy... ================ Mariusz Mielnik www.flashzone.pl ================
Re: Losowy rekord...
Author: Darek Sieradzki
Date: Fri, 31 Aug 2001 11:11
Date: Fri, 31 Aug 2001 11:11
33 lines
2066 bytes
2066 bytes
Mariusz Mielnik <lutek@flashzone.pl> wrote in
news:h6ruotoe1hijj76av63hal64mmgd5482pv@4ax.com:
> Dnia Thu, 30 Aug 2001 12:11:45 +0000 (UTC), Darek Sieradzki
> <dsier@MAPS-ONpmp.com.pl> wystukal(a):
>
>>"Averne" <averne@averne.eu.org> wrote in news:9ml9u0$9eh$1@news.tpi.pl:
>>
>>> Jak w PHP wybrac losowo rekord z konkretnej tabeli w bazie danych
>>> MySQL ?
>>
>>a) wykonac zapytanie
>>b) pobrac liczbe zwroconych rekordow
>>c) wylosowac liczbe z zakresu 0, liczba_rekordow-1
>>d) pobrac rekord o wylosowanym numerze.
>>
> owszem jezeli masz id masz pokolei jezeli nie to lipa...
Mozesz nie miec wogle zadnego klucza, albo klucz "nieliczbowy". Chodzilo mi
np. o pg_result() ktore pobiera wynik zapytania z rekordami ponumerowanymi
o 0 do pg_numrows(), pokolei.
Tak czy inaczej lepszym wyjsciem jest zapytanie z "order by rand() limit
1", tylko to NTG.
DS
--
.---------
(-- a dny jak padli andele prsty ryji hlinu --. .
` `-- a dni jak upadle anioly palcami ryja ziemie --)
---------'
http://www.dago.pmp.com.pl
Re: Losowy rekord...
Author: Mariusz Mielnik
Date: Fri, 31 Aug 2001 11:51
Date: Fri, 31 Aug 2001 11:51
32 lines
1909 bytes
1909 bytes
Dnia Fri, 31 Aug 2001 11:11:55 +0000 (UTC), Darek Sieradzki <dsier@MAPS-ONpmp.com.pl> wystukal(a): >Mozesz nie miec wogle zadnego klucza, albo klucz "nieliczbowy". Chodzilo mi >np. o pg_result() ktore pobiera wynik zapytania z rekordami ponumerowanymi >o 0 do pg_numrows(), pokolei. dlatego warto dodawac pole ID :-) > >Tak czy inaczej lepszym wyjsciem jest zapytanie z "order by rand() limit >1", nie do konca przy powiedzmy 500 rekordach ok, ale to zapytanie tak czy owak najpierw pobiera wszystko pozniej losuje kolega testowal to na bazie z 300 000 rekordow samo wykonanie zapytania trwalo okolo 20 sekund... (na lokalnym kompie) bez wzgledu ile mialo byc zwroconych wynikow >tylko to NTG. czy w zapytaniu ktos nie wspomnial o PHP .. programowo rozniez mozna to rozwiazac i poniekad zostalo podane (teza) wiec nie sadze zeby to bylo NTG!! ================ Mariusz Mielnik www.flashzone.pl ================
Re: Losowy rekord...
Author: Averne
Date: Mon, 03 Sep 2001 12:10
Date: Mon, 03 Sep 2001 12:10
40 lines
2257 bytes
2257 bytes
Jasne, ze mam ID :) Przetestuje metode z ORDER BY RAND() i odpisze... Uzytkownik "Mariusz Mielnik" <lutek@flashzone.pl> napisal w wiadomosci news:i6uuotsg8bq55oba3hk3a1otbe3k2mgvo8@4ax.com... > Dnia Fri, 31 Aug 2001 11:11:55 +0000 (UTC), Darek Sieradzki > <dsier@MAPS-ONpmp.com.pl> wystukal(a): > > >Mozesz nie miec wogle zadnego klucza, albo klucz "nieliczbowy". Chodzilo mi > >np. o pg_result() ktore pobiera wynik zapytania z rekordami ponumerowanymi > >o 0 do pg_numrows(), pokolei. > > dlatego warto dodawac pole ID :-) > > > >Tak czy inaczej lepszym wyjsciem jest zapytanie z "order by rand() limit > >1", > > > nie do konca przy powiedzmy 500 rekordach ok, ale to zapytanie tak czy > owak najpierw pobiera wszystko pozniej losuje > > kolega testowal to na bazie z 300 000 rekordow samo wykonanie > zapytania trwalo okolo 20 sekund... (na lokalnym kompie) bez wzgledu > ile mialo byc zwroconych wynikow > > > >tylko to NTG. > > czy w zapytaniu ktos nie wspomnial o PHP .. programowo rozniez mozna > to rozwiazac i poniekad zostalo podane (teza) wiec nie sadze zeby to > bylo NTG!! > > > ================ > Mariusz Mielnik > www.flashzone.pl > ================
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads