返回一个伪随机 UInt32 数,均匀分布在所有 UInt32 类型的数字中。
使用linear congruential 生成器。
语法
rand([x])
参数
x
— 表达式结果为任何受支持的数据类型。结果值将被丢弃,但如果在一个查询中多次调用该函数,则表达式本身可用于绕过公共子表达式消除。可选参数。返回值
示例
SELECT rand(), rand(number) FROM numbers(2);
┌─rand()─────┬─rand(number)─┐ │ 3882830473 │ 2236253349 │ │ 4122795699 │ 3720179576 │ └────────────┴──────────────┘
返回一个伪随机 UInt64 数,该数在所有 UInt64 类型的数中均匀分布。
使用linear congruential 生成器。
语法
rand64([x])
参数
x
— 表达式结果为任何受支持的数据类型。结果值将被丢弃,但如果在一个查询中多次调用该函数,则表达式本身可用于绕过公共子表达式消除。可选参数。返回值
示例
SELECT rand64(), rand64(number) FROM numbers(2);
┌─rand64()────────────┬─rand64(number)───────┐ │ 4216084906413806748 │ 17404981640646529534 │ │ 874879808660605772 │ 941470430861381566 │ └─────────────────────┴──────────────────────┘
生成具有随机值的常量列。
语法
randConstant([x])
参数
x
— 表达式结果为任何受支持的数据类型。结果值将被丢弃,但如果在一个查询中多次调用该函数,则表达式本身可用于绕过公共子表达式消除。可选参数。返回值
示例
SELECT rand(), rand(1), rand(number), randConstant(), randConstant(1), randConstant(number) FROM numbers(3)
┌─rand()─────┬─rand(1)────┬─rand(number)─┬─randConstant()─┬─randConstant(1)─┬─randConstant(number)─┐ │ 1617218167 │ 3030783952 │ 3660442590 │ 3335999329 │ 1508515848 │ 1880875990 │ │ 432450540 │ 2987789840 │ 653572307 │ 3335999329 │ 1508515848 │ 1880875990 │ │ 3698169875 │ 79826010 │ 458167070 │ 3335999329 │ 1508515848 │ 1880875990 │ └────────────┴────────────┴──────────────┴────────────────┴─────────────────┴──────────────────────┘