2014-04-15 2 views
1

데모 테이블에 대해 약간 기울어 진 실제 값 테이블이 있습니다.SQL에서 randbetween에 의한 열 곱하기

|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 % 감소하는 요청 것을 않습니다.

업데이트 문이 될 것 같은 뭔가 : 최종 참고로

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

: Excel에서 코드는 약 100

편집하여 값을 곱이 엑셀처럼 정확하게 작동하지 않습니다 번역. 이유 중 하나는 정수 값이 아닌 연속 값을 사용한다는 것입니다.

+0

죄송합니다. 나는 0.85 -01.15를 곱하려고합니다. – n8udd

+0

이 항목을 UPDATE/SET과 함께 사용할 수 있습니까? – n8udd