1. v_ret 결과값 내에 rand() 함수를 통해 랜덤 한 숫자를 반환받아 종료 범위를 곱한 뒤 최종 1을 더합니다. (* 1을 더하는 이유는 0의 값이 나오는 경우 최소값 1을 유지하기 위해 더 합니다)
CREATEFUNCTION `f_randscore1` (_range int)
RETURNSINTBEGINDECLARE v_ret INT;
-- 1. v_ret 결과값 내에 rand() 함수를 통해 랜덤한 숫자를 반환 받아 종료 범위를 곱한 뒤 최소값 지정을 위해 최종 1을 더합니다.SET v_ret =FLOOR(RAND() * _range) +1;
RETURN v_ret;
END
- 시작 범위와 종료 범위를 지정하여 해당 범위 내의 랜덤 숫자를 만드는 함수를 구성합니다.
💡 f_randscore2
- 'start + RAND() * (end - start + 1)' 식을 사용하여 랜덤 한 소수를 생성한 다음, 이를 'FLOOR' 함수를 사용하여 가장 가까운 낮은 정수로 반올림합니다.
변수/파라미터 명
분류
타입
설명
_endscope
파라미터
INT
랜덤한 숫자의 최대 범위를 지정하는 파라미터
_startscope
파라미터
INT
랜덤한 숫자의 최소 범위를 지정하는 파라미터
v_ret
변수
INT
최종 결과값을 반환하는 변수
CREATE DEFINER=`localmaster`@`localhost` FUNCTION `f_randscore2`(_startscope int, _endscope int) RETURNSintBEGINDECLARE v_ret INT;
-- v_ret 결과값 내에 'start + RAND() * (end - start + 1)' 식을 사용하여 랜덤한 소수를 생성한 다음, 이를 'FLOOR' 함수를 사용하여 가장 가까운 낮은 정수로 반올림합니다. SET v_ret =FLOOR(_startscope + RAND() * (_endscope - _startscope +1));
RETURN v_ret;
END