Hi Benjamin,

The perfect answer.

Thank you,

Anvar.

At 08:44 AM 16/02/2002 +0100, you wrote:
>Hi.
>
>On Fri, Feb 15, 2002 at 09:05:02PM -0800, [EMAIL PROTECTED] wrote:
> > In Re: Selecting records with the highest value no greater than x, 
> <[EMAIL PROTECTED]> wrote:
> > >
> > >Hi Brent,
> > >
> > >I cannot think of a single query doing your job.
>
>IMO, there is one, if I did understand the question correctly:
>
>SELECT * FROM NEWS WHERE RATING <= 4 ORDER BY RATING DESC, RAND() LIMIT 1;
>
>This give back a random news entry of the highest score available, but
>smaller than 5.
>
> > >But it can be done with two.
> > >
> > >SELECT @maxrating := MAX(RATING) FROM NEWS WHERE RATING <= 4;
> > >SELECT * FROM NEWS WHERE RATING=@maxrating ORDER BY RAND() LIMIT 1;
>[...]
> > Nice, assuming that the " @maxrating " is the syntax for a local
> > variable within the server.  Where is that discussed in the manual?
>
>They can be found under the term "user variables":
>http://www.mysql.com/doc/V/a/Variables.html
>
> > Some simple use of an API is the probably the best answer, it's
> > probably ~ 25 lines of perl.
>[...]
>
>Depends on the needs. A pure SQL solution should be noticeably faster.
>
>Bye,
>
>         Benjamin.
>
>--
>[EMAIL PROTECTED]



---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to