2014-04-15 44 views
1

我有一个真正的值表,我试图稍微倾斜一个演示表。在sql中乘以randlength列

表的布局实际上是:

|id|purchased|shipped|delivered|

,我试图通过85-115%,乘以权3列,这样数据仍然给原始表的合理表示,不放弃实际值。

在Excel中,我会为每一列做

=purchased*(randbetween(85,115)/100)
,但我试图用SQL做同样的事情,以便每一行都乘以该范围内的一个不同的随机数。

我对sql相当陌生,我试图避免导出整个表,随机化Excel中的值并重新导入表。

回答

3

使用rand()算术:

select purchased * (0.85 + rand()*0.30) 
from . . . 

这做什么的问题询问,这是增加或以约15%的下降。在Excel中的代码乘以约100

编辑值:

update语句会是这样的:

update table t 
    set purchased = purchased * (0.85 + rand()*0.30) 

最后一点:这个不完全的工作方式类似于Excel的版。一个原因是这使用连续值而不是整数值。

+0

道歉,我的意思是乘以0.85 -01.15 – n8udd

+0

这将工作与UPDATE/SET列? – n8udd