• 4 odgovora
  • 3.862 pregleda
RAND() selektovanje iz MySQL baze bez ponavljanja vrednosti polja? 27.08.2006. u 15:30 · pre 245 meseci #1
Treba mi sledeci SQL upit.

U bazi imam polje poster koje ima vrednosti 1, 2, 3, 4 i tako dalje... to je kao user_id.

Trebam da selektujem 3 polja gde ce poster biti recimo 1, 4 ili 5 ali da mi ne prikaze od poster 1 sva 3 polja, nego da uvek izmesa da u ta 3 bude 1, 4 ili 5 i to sve da bude RAND(), posto poster 1 ima npr. 300 upisa... pa da se svaki put prikaze jedan od 300, a tako i za ostala 2.

Nadam se da cete razumeti sta sam sada pokusao da objasnim :)

Ja sam probao nesto ovako ali nije dobro jer rekto kada od ta 3 rezultata koje dobijem poster ima razlicite vrednosti... skoro uvek se pojavi samo 1 koji ima najvise upisa...

Code:
SELECT * FROM table_posts WHERE poster IN (1, 4, 5) ORDER BY RAND(UNIX_TIMESTAMP()) LIMIT 3;


Zna li neko kako to da napisem?

Hvala unapred.
Potpis
Pozdrav, NenadS!
Re: RAND() selektovanje iz MySQL baze bez ponavljanja vrednosti polja? 27.08.2006. u 20:49 · pre 245 meseci #3
Nece, ne primecujem nikakvu razliku... desi se da selektuje 2 ista usera, cak i sva 3 ista koja imaju najvise poruka... a to nije dobro :(

p.s.

DISTINCT radi lepo samo u slucaju kada navedem jedno polje koje ce da selektuje, recimo poster, u tom slucaju dobijam 3 razlicita ali meni trebaju i ostali podaci...

Mozda kada bih uradio JOIN ali ne mislim da to ne bi pomoglo jer na osnovu imena ne mogu da dobijem ostale podatke jer se ime spominje mnogo puta...

I dalje trezim pravo resenje...
Potpis
Pozdrav, NenadS!
Re: RAND() selektovanje iz MySQL baze bez ponavljanja vrednosti polja? 28.08.2006. u 11:32 · pre 245 meseci #4
Posto nista nisam uspeo da nadjem, bio sam prinudjen da to uradim na drugi nacin...

Stavio sam u array usere cije poruke zelim da mi prikazuje, a zatim sam u for petlju ubacio sa vrti onoliko puta koliko sam usera uneo u niz i da mi za svakog od njih prikaze po jednu random poruku... a useri se u nizu tj. iz njega prikazuju isto random, tako da mi ovo zavrsava posao ali ne svidja mi se to sto sada imam za 3 usera, 3 SQL upita...
Potpis
Pozdrav, NenadS!
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme