首页 > 代码库 > Postgres快速创建大量测试数据

Postgres快速创建大量测试数据

DROP TABLE  IF EXISTS color;CREATE TABLE color(    cname VARCHAR(20),    remark VARCHAR(20));insert into color select round(random()*100),round(random()*1000) from generate_series(1,10000000);

插入10000000数据之后,用时51秒

对于generate_series函数,还可以生成时间:

david=# select generate_series(now(), now() + 7 days, 1 day);        generate_series        ------------------------------- 2013-04-03 14:22:26.391852+08 2013-04-04 14:22:26.391852+08 2013-04-05 14:22:26.391852+08 2013-04-06 14:22:26.391852+08 2013-04-07 14:22:26.391852+08 2013-04-08 14:22:26.391852+08 2013-04-09 14:22:26.391852+08 2013-04-10 14:22:26.391852+08(8 rows)david=# select generate_series(to_date(20130403,yyyymmdd), to_date(20130404,yyyymmdd), 3 hours);      generate_series     ------------------------ 2013-04-03 00:00:00+08 2013-04-03 03:00:00+08 2013-04-03 06:00:00+08 2013-04-03 09:00:00+08 2013-04-03 12:00:00+08 2013-04-03 15:00:00+08 2013-04-03 18:00:00+08 2013-04-03 21:00:00+08 2013-04-04 00:00:00+08(9 rows)

 

Postgres快速创建大量测试数据