| 
 Posted by Joe on 01/08/06 01:00 
"Stefan Rybacki" <stefan.rybacki@gmx.net> skrev i en meddelelse  
news:42apniF1hejs7U1@individual.net... 
> -----BEGIN PGP SIGNED MESSAGE----- 
> Hash: SHA1 
> 
> Joe wrote: 
>> Hi 
>> I need some help doing a easy php/sql solution to a random selection with 
>> rated stuff. 
>> I have a table like: 
>> 
>> Name Rated 
>> -------------- 
>> Thompsen 500 
>> Milla          10 
>> Jensen         1 
>> 
>> Means that the name Thompsen appears 50 times as often as Milla and 500 
>> times as often Jensen. 
>> 
>> I now need some scripting that counts the total ratefactor like 
>> SELECT sum(Rated) FROM Table 
>> In this case 511 
>> And then make a random value between 1 and 511 and then print out the  
>> name, 
>> which in this case will be Thompsen 500 of 511 times (in avg) 
>> 
>> I need a quick way to find a name based on the Rated factors, any help? 
>> 
> 
> 1. get your ratefactor (SELECT sum(rated) FROM table) 
> 2. create a random number between 1 and ratefactor in PHP 
> 3. get the random item (SELECT name FROM table WHERE  
> rated>=created_randomnumber 
> ORDER BY rated, rand() LIMIT 1) 
> 
> Regards 
> Stefan 
> 
 
I think I need some explanation for this :-) 
 
As I see it it will give equal chance of the three names if the random  
number is 1, is that correct? 
 
If that's correct it will not be 1/511 chance of the name Jensen to appear.
 
[Back to original message] 
 |