MySQL的函数操作

DDL

CREATE TABLE student (
  id INT PRIMARY KEY AUTO_INCREMENT,
  createDate DATE,
  userName VARCHAR(255),
  phone VARCHAR(15),
  age INT,
  sex CHAR(1),
  introduce TEXT
);

查询

DELIMITER //

CREATE PROCEDURE InsertRandomStudents(num_students INT)
BEGIN
    DECLARE counter INT DEFAULT 0;
    
    WHILE counter < num_students DO
        INSERT INTO student (createDate, userName, phone, age, sex, introduce)
        VALUES (
            -- createDate: 随机日期(例如:过去10年内的随机日期)
            DATE_SUB(CURDATE(), INTERVAL FLOOR(RAND() * 3650) DAY),
            
            -- userName: 随机用户名(你可以根据需要调整生成逻辑)
            CONCAT('User', FLOOR(RAND() * 100000)),
            
            -- phone: 随机电话号码
            CONCAT('1', FLOOR(RAND() * 800000000 + 100000000)),
            
            -- age: 18到30岁之间的随机年龄
            FLOOR(RAND() * (30 - 18 + 1)) + 18,
            
            -- sex: 随机性别('M'或'F')
            IF(RAND() > 0.5, 'M', 'F'),
            
            -- introduce: 随机介绍文本(你可以替换为实际的文本或更复杂的逻辑)
            CONCAT('This is a random introduction for User', FLOOR(RAND() * 100000))
        );
        
        SET counter = counter + 1;
    END WHILE;
END //

DELIMITER ;
CALL InsertRandomStudents(200000);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值