sql >> Database >  >> RDS >> Mysql

Hoe vul ik een MySQL-tabel met veel willekeurige getallen?

Om de tabel te maken, gebruik:

CREATE TABLE rand_numbers (
    number INT NOT NULL
) ENGINE = MYISAM;

Om het vervolgens te vullen met willekeurige waarden, kunt u een opgeslagen procedure (die looping ondersteunt):

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 ;

CALL InsertRand(1111, 2222, 5555);

Vervolgens kunt u die procedure opnieuw gebruiken om meer willekeurige waarden in te voegen op basis van verschillende parameters. zeg 600 rijen met willekeurige waarden tussen 1200 en 8500:

CALL InsertRand(600, 1200, 8500);


  1. SQL Express installeren

  2. Amazon RDS (MySQL of MariaDB) migreren naar een On-Prem Server

  3. Hoe een primaire sleutel in SQL te verwijderen

  4. MySQL:hoe kan ik ALLE beperkingen op een tafel zien?