表结构:
create table t_testdata(
id char(3) primary key,
text1 varchar(60) not null,
text2 varchar(60) not null,
text3 varchar(60) not null,
text4 varchar(60) not null
)
要求:随机生成10w条记录(数据内容为字母和数字组合)。
注意主键哦,鄙人就是不知主键怎么插入10w条不重复的记录(数据内容为字母和数字组合),我想字母大小写共52个加上数字10个,三位共二十多万个不同的id。到底怎么插入啊(详细点)?mysql10W不重复
create table t_testdata(
id char(3) primary key,
text1 varchar(60) not null,
text2 varchar(60) not null,
text3 varchar(60) not null,
text4 varchar(60) not null
)
要求:随机生成10w条记录(数据内容为字母和数字组合)。
注意主键哦,鄙人就是不知主键怎么插入10w条不重复的记录(数据内容为字母和数字组合),我想字母大小写共52个加上数字10个,三位共二十多万个不同的id。到底怎么插入啊(详细点)?mysql10W不重复
mysql> select left(uuid(),3);
+----------------+
| left(uuid(),3) |
+----------------+
| fc4 |
+----------------+
1 row in set (0.02 sec)
[A-Za-z0-9] CHAR(3)一共也就238328个不同的数据,其实已经不是随机的问题了。 楼主的需求算法其实是从 238,328 随机排序后选择前100,000个记录。标准的算法是,把这 238,328 记录全部生成在一张T表中,然后 order by rand() limit 100000