DIB*_*its 2 random postgresql function
我想构建一个生成2列表的sql,其中第一个是一系列时间戳,第二个是提供值的functon。例如这里是random()。但是随机函数在整个表中始终为我提供相同的值,我希望有所不同。如何解决?
SELECT * FROM generate_series('2008-03-01 00:00'::timestamp,
'2008-03-05 12:00',
'1 day') as ts, random() as value;
Run Code Online (Sandbox Code Playgroud)
生成表:
"2008-03-01 00:00:00";0.816707271616906
"2008-03-02 00:00:00";0.816707271616906
"2008-03-03 00:00:00";0.816707271616906
"2008-03-04 00:00:00";0.816707271616906
"2008-03-05 00:00:00";0.816707271616906
Run Code Online (Sandbox Code Playgroud)
将random()呼叫移至选择列表:
SELECT ts.*, random() as value
FROM generate_series('2008-03-01 00:00'::timestamp,
'2008-03-05 12:00',
'1 day') as ts;
Run Code Online (Sandbox Code Playgroud)
通过将其放入FROM子句中,它只会被评估一次。
| 归档时间: |
|
| 查看次数: |
33 次 |
| 最近记录: |