집 >데이터 베이스 >MySQL 튜토리얼 >저장 프로시저를 사용하여 MySQL 테이블에 난수를 효율적으로 채우는 방법은 무엇입니까?
난수로 MySQL 테이블 채우기: 절차적 접근 방식
난수로 MySQL 테이블을 생성하고 채우는 작업은 다음에서 직접 수행할 수 있습니다. 외부 언어나 지나치게 일반적인 솔루션을 사용하는 것과는 달리 MySQL 프롬프트입니다. 간단한 저장 프로시저를 사용하여 이를 달성하는 방법은 다음과 같습니다.
테이블 생성:
<code class="sql">CREATE TABLE rand_numbers ( number INT NOT NULL ) ENGINE = MYISAM;</code>
데이터 채우기를 위한 저장 프로시저:
<code class="sql">DELIMITER $$ CREATE PROCEDURE InsertRand(IN NumRows INT, IN MinVal INT, IN MaxVal INT) BEGIN DECLARE i INT; SET i = 1; START TRANSACTION; WHILE i <= NumRows DO INSERT INTO rand_numbers VALUES (MinVal + CEIL(RAND() * (MaxVal - MinVal))); SET i = i + 1; END WHILE; COMMIT; END$$ DELIMITER ;</code>
특정 매개변수로 채우기:
'rand_numbers' 테이블을 2222에서 5555 사이의 난수 1111개 행으로 채우려면:
<code class="sql">CALL InsertRand(1111, 2222, 5555);</code>
다른 매개변수에 재사용:
저장 프로시저를 재사용하여 다양한 매개변수를 기반으로 더 많은 임의의 값을 삽입할 수 있습니다. 예를 들어, 1200에서 8500 사이의 임의 값이 포함된 600개의 행을 삽입하려면:
<code class="sql">CALL InsertRand(600, 1200, 8500);</code>
이 저장 프로시저 접근 방식을 사용하면 MySQL 테이블을 임의의 숫자로 쉽게 채울 수 있으므로 테이블 수를 유연하게 사용자 정의할 수 있습니다. 행과 값의 범위.
위 내용은 저장 프로시저를 사용하여 MySQL 테이블에 난수를 효율적으로 채우는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!