use*_*034 2 sql random postgresql random-seed
我想要实现的是为一个过程选择一个控制组。为此,我使用了 random(),为了调试/一致性,我希望能够以可重复的方式设置随机数。意思是,一旦它分配给用户 123 随机数 0.001,我就会运行查询。在不同的时间我删除了以前的数据,我调用了相同的查询,并且再次为用户 123 分配了随机数 0.001。
我试过了:
SELECT setseed(0);
SELECT 1, random() from generate_series(1,10);
Run Code Online (Sandbox Code Playgroud)
每次运行我都会收到一个不同的随机数。
SELECT 1, setseed(0), random() from generate_series(1,10);
Run Code Online (Sandbox Code Playgroud)
每行接收相同的随机数,这是无用的。
我确定这里有我不明白的地方。任何帮助表示赞赏。
做一个union all对的setseed()与所需的查询查询。有必要匹配来自两个查询的列类型。setseed()返回void。
select setseed(0), null
union all
select null, random()
from generate_series(1, 10)
offset 1
;
Run Code Online (Sandbox Code Playgroud)
该offset 1子句setseed() row从结果集中消除
| 归档时间: |
|
| 查看次数: |
1587 次 |
| 最近记录: |