저장 프로시저를 사용하여 MySQL 테이블을 임의의 숫자로 채우는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2024-10-25 04:12:30
원래의
733명이 탐색했습니다.

How to populate a MySQL table with random numbers using a stored procedure?

저장 프로시저를 사용하여 MySQL 테이블을 난수로 채우려면

많은 난수로 MySQL 테이블을 채우려면 체계적인 접근 방식이 필요합니다. 이 문서에서는 INT 유형의 하나의 열(숫자)과 1111개의 행이 있는 테이블(rand_numbers)을 생성하는 방법을 보여줍니다. 여기서 각 행에는 2222에서 5555 사이의 임의의 숫자가 포함됩니다.

이 작업을 수행하기 위해 다음을 활용합니다. 원하는 수의 행을 반복하고 지정된 범위(MinVal 및 MaxVal) 내의 난수를 rand_numbers 테이블에 삽입하는 저장 프로시저(InsertRand). 이 절차는 삽입 프로세스를 단순화하고 다양한 데이터 세트에 대한 재사용을 가능하게 합니다.

테이블 생성

먼저 CREATE TABLE 문을 사용하여 rand_numbers 테이블을 생성합니다.

CREATE TABLE rand_numbers (number INT NOT NULL) ENGINE = MYISAM;
로그인 후 복사

테이블 채우기

다음으로 InsertRand 저장 프로시저가 정의됩니다.

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 ;
로그인 후 복사

이 프로시저는 세 가지 매개 변수를 사용합니다. NumRows(삽입할 행 수), MinVal(난수의 최소값), MaxVal(난수의 최대값)

2222~2222 사이의 난수 1111개로 테이블을 채우려면 5555에서는 다음 명령문이 실행됩니다.

CALL InsertRand(1111, 2222, 5555);
로그인 후 복사

프로시저 재사용

InsertRand 프로시저를 재사용하여 다른 매개변수로 추가 난수를 삽입할 수 있습니다. 예를 들어, 1200에서 8500 사이의 임의 값이 포함된 600개의 행을 삽입하려면 다음을 수행하세요.

CALL InsertRand(600, 1200, 8500);
로그인 후 복사

이 다용도 저장 프로시저는 MySQL 테이블을 대량의 난수로 채우는 편리하고 효율적인 방법을 제공합니다.

위 내용은 저장 프로시저를 사용하여 MySQL 테이블을 임의의 숫자로 채우는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!