select random order by random

From: piotr_sobolewski <piotr_sobolewski(at)o2(dot)pl>
To: pgsql-general(at)postgresql(dot)org
Subject: select random order by random
Date: 2007-11-01 15:24:39
Message-ID: 72d870d.d1fb7b2.4729efb7.56898@o2.pl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Dear sirs,

I was very surprised when I executed such SQL query (under PostgreSQL 8.2):
select random() from generate_series(1, 10) order by random();

I thought I would receive ten random numbers in random order. But I received
ten random numbers sorted numerically:
random
-------------------
0.102324520237744
0.17704638838768
0.533014383167028
0.60182224214077
0.644065519794822
0.750732169486582
0.821376844774932
0.88221683120355
0.889879426918924
0.924697323236614
(10 rows)

I don't understand - why the result is like that? It seems like in each row
both random()s were giving the same result. Why is it like that? What caused
it?

--
Piotr Sobolewski
http://www.piotrsobolewski.w.pl

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Anand Kumar 2007-11-01 15:35:09 Need Refrences
Previous Message Jeff MacDonald 2007-11-01 15:24:08 Solaris 10, mod_auth_pgsql2