Re: Using random() in update produces same random value for all
От | Olleg Samoylov |
---|---|
Тема | Re: Using random() in update produces same random value for all |
Дата | |
Msg-id | 471561516635427@web43o.yandex.ru обсуждение исходный текст |
Ответ на | Using random() in update produces same random value for all (Alex Magnum <magnum11200@gmail.com>) |
Ответы |
Re: Using random() in update produces same random value for all
|
Список | pgsql-general |
Yep, interesting. Checked with PostgreSQL 10.1. => select *,random() from generate_series(1,10); generate_series | random -----------------+------------------- 1 | 0.308531506918371 2 | 0.126279713585973 3 | 0.984668150078505 4 | 0.884970095474273 5 | 0.692738385871053 6 | 0.290897831786424 7 | 0.914066118188202 8 | 0.031909613404423 9 | 0.574441066011786 10 | 0.631192437838763 (10 rows) => select *,(select * from random()) from generate_series(1,10); generate_series | random -----------------+-------------------- 1 | 0.0718352268449962 2 | 0.0718352268449962 3 | 0.0718352268449962 4 | 0.0718352268449962 5 | 0.0718352268449962 6 | 0.0718352268449962 7 | 0.0718352268449962 8 | 0.0718352268449962 9 | 0.0718352268449962 10 | 0.0718352268449962 (10 rows) => select *,(select random()) from generate_series(1,10); generate_series | random -----------------+------------------- 1 | 0.848611807450652 2 | 0.848611807450652 3 | 0.848611807450652 4 | 0.848611807450652 5 | 0.848611807450652 6 | 0.848611807450652 7 | 0.848611807450652 8 | 0.848611807450652 9 | 0.848611807450652 10 | 0.848611807450652 (10 rows) Looked like random() is "volatile", but in subselect it works like "stable".
В списке pgsql-general по дате отправления: