random_normal()
是一个提供正态分布随机数的系统函数。
random_normal()
在 PostgreSQL 16 中添加。
用法
random_normal ( [mean
double precision
[,stddev
double precision
]] ) →double precision
random_normal()
使用高斯分布生成一组正态分布的随机值。
mean
指定值的正态分布的均值。 stddev
是值的正态分布的标准差。
一个具有类似功能的函数,normal_rand()
,可以通过 tablefunc
contrib 模块
获得。
变更历史
- PostgreSQL 16
- 添加 (提交 38d81760)
示例
random_normal()
的基本用法示例
postgres=# SELECT random_normal(); random_normal -------------------- 0.7821236960137614 (1 row)
提供均值
postgres=# SELECT random_normal(5) FROM generate_series(1,5); random_normal ------------------- 5.29703419771379 3.623749811810435 6.572131718905143 4.428844367745707 6.250520372123069 (5 rows)
参考文献
- PostgreSQL 文档: 随机函数
有用链接
- 新函数:random_normal - 帕维尔·卢扎诺夫/PostgresPro 于 2023 年 3 月发布的博文的一部分
- 等待 PostgreSQL 16 – 发明 random_normal() 以提供正态分布的随机数 - 胡伯特·“depesz”·卢巴切夫斯基于 2023 年 1 月发布的博文