我正在尝试将随机浮点添加到 SQLite 中整个列的现有值
向现有的数字添加一个数字应该不难,而且UPDATE myTable SET Column1=Column1+1应该可行。如果我是正确的,它将获取第 1 列中的每个值并向其添加 1。
问题是获取随机数,我的目标是得到与此类似的东西
UPDATE mytable SET Column1=(Column1 + (RAND Between 0.5 AND 0.8));
Run Code Online (Sandbox Code Playgroud)
因此,每一行都添加了不同的随机浮点数,该浮点数是在添加到其中的 2 个浮点数之间生成的。
我的问题是,我在 SQLite 下找到的 random 的唯一参考是 random 函数生成一个整数。
您可以从 SQLite 获取区间 (-1, 1] 内的随机浮点数,如下所示:
SELECT RANDOM() / CAST(-9223372036854775808 AS REAL)
因此,您可以通过以下方式获取 [0, 1) 标准随机数区间内的值:
SELECT 0.5 - RANDOM() / CAST(-9223372036854775808 AS REAL) / 2
...并从那里进行适当修改。
| 归档时间: |
|
| 查看次数: |
1836 次 |
| 最近记录: |