当前位置: 首页 > article >正文

PostgreSQL创建分区表,并插入大量数据

创建分区表,按日期范围分区

CREATE TABLE sales (
    id              serial,
    sale_date DATE,    
    amount NUMERIC,    
    PRIMARY KEY(id, sale_date)
) PARTITION BY RANGE (sale_date);

创建分区

CREATE TABLE sales_2019 PARTITION OF sales FOR VALUES FROM ('2019-01-01') TO ('2020-01-01'); 
CREATE TABLE sales_2020 PARTITION OF sales FOR VALUES FROM ('2020-01-01') TO ('2021-01-01'); 
CREATE TABLE sales_2021 PARTITION OF sales FOR VALUES FROM ('2021-01-01') TO ('2022-01-01'); 
CREATE TABLE sales_2022 PARTITION OF sales FOR VALUES FROM ('2022-01-01') TO ('2023-01-01'); 
CREATE TABLE sales_2023 PARTITION OF sales FOR VALUES FROM ('2023-01-01') TO ('2024-01-01'); 

插入随机日期和随机金额数据,每次插入2190001条数据

INSERT INTO sales (sale_date, amount)  
SELECT generate_series(to_date('2019-01-01','yyyy-mm-dd'), to_date('2023-12-31','yyyy-mm-dd'), '0.02 hours'), (random()*100.)::numeric(6,2);

测试性能

select count(1) from sales;


插入数据sql参考:https://pgfans.cn/a/1726

原文中有中类型的随机数据插入可供参考。


http://www.kler.cn/a/131736.html

相关文章:

  • 微信小程序数据传递的方式-页面数据的存取
  • 剑指offer --- 用两个栈实现队列的先进先出特性
  • 23111707[含文档+PPT+源码等]计算机毕业设计基于javawebmysql的旅游网址前后台-全新项目
  • 【项目】云备份系统基础功能实现
  • OpenHarmony应用开发入门教程(一、开篇)
  • M系列 Mac使用Homebrew下载配置git和连接GitHub
  • 【LeetCode】94. 二叉树的中序遍历
  • 力扣labuladong——一刷day36
  • Python----图像的手绘效果
  • pycharm pro v2023.2.4(Python编辑开发)
  • Ubuntu22.04 Apache2安装SSL证书 https
  • 033-从零搭建微服务-日志插件(一)
  • 主键问题以及分布式 id
  • centos三台主机配置互信ssh登录
  • 各机构如何加强网络渗透、“渗透”防御
  • 目标检测YOLO系列从入门到精通技术详解100篇-【目标检测】机器视觉(基础篇)(三)
  • gorm的简单操作
  • 一文看分布式锁
  • CTFhub-RCE-过滤空格
  • 12-1- GAN -简单网络-线性网络