2014-04-15 45 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