MySQL造假数据
今天dba群里有人问 mysql可以执行for i in循环吗 ,沟通后明确需求是想批量插入数据,想要造假数据。
大部分数据库都不建议写循环,不建议使用游标,
对于造假数据我的方案是: 用以下方式构造假数据。
INSERT INTO table_name(col1,col2,...)
SELECT col1,col2,...
FROM table_name
自查自插,一次就翻倍,十次1024倍。
多点几次执行,要多少数据都可以。
如果希望id自动生成,id列不查询不插入就可以实现。
如果希望某列col1的数据有变化,可以在SELECT子句里加一些处理。
例如使用col1是数字,可以用col1和id组合计算来生成新的数据。
如果使用col1是字符串,可以使用id计算一个数字,截取col1字符串值的一部分。
这个造假数据的方式,所有数据库通用。