首页 > 其他分享 >Postgre创建分区表

Postgre创建分区表

时间:2024-06-23 19:33:04浏览次数:3  
标签:00 01 06 23 创建 Postgre 2024 person 分区表

创建范围分区表

# 创建分区表 主表
CREATE TABLE person_1
(
    id SERIAL NOT NULL,
    name VARCHAR NOT NULL,
    begin_time TIMESTAMP,
    end_time TIMESTAMP
) PARTITION BY RANGE (begin_time);

# 创建分区表 子表
create table person_1_2024_06_23 
partition of person_1 for values from ('2024-06-23 00:00:00') to ('2024-06-24 00:00:00');
create table person_1_2024_06_24
partition of person_1 for values from ('2024-06-24 00:00:00') to ('2024-06-25 00:00:00');

# 往主表插入数据,PostgreSQL内部会自动管理数据插入的路由
insert into person_1 (id, "name", begin_time, end_time)
values(1,'张三','2024-06-23 01:00:00','2024-06-23 01:00:00'),
(2,'李四','2024-06-24 01:00:00','2024-06-24 01:00:00');

创建列表分区表

CREATE TABLE person_2
(
    id SERIAL NOT NULL,
    name VARCHAR NOT NULL,
    begin_time TIMESTAMP,
    end_time TIMESTAMP
) PARTITION BY LIST (name);

create table person_2_1
partition of person_2 for values in ('张三','李四');
create table person_2_2
partition of person_2 for values in ('王五','赵六');

insert into person_2 (id, "name", begin_time, end_time)
values(1,'张三','2024-06-23 01:00:00','2024-06-23 01:00:00'),
(2,'李四','2024-06-24 01:00:00','2024-06-24 01:00:00'),
(3,'王五','2024-06-23 01:00:00','2024-06-23 01:00:00'),
(4,'赵六','2024-06-23 01:00:00','2024-06-23 01:00:00');

创建哈希分区表

CREATE TABLE person_3
(
    id SERIAL NOT NULL,
    name VARCHAR NOT NULL,
    begin_time TIMESTAMP,
    end_time TIMESTAMP
) PARTITION BY hash (name);

create table person_3_1
partition of person_3 for values with (modulus 2, remainder 0);
create table person_3_2
partition of person_3 for values with (modulus 2, remainder 1);

insert into person_3 (id, "name", begin_time, end_time)
values(1,'张三','2024-06-23 01:00:00','2024-06-23 01:00:00'),
(2,'李四','2024-06-24 01:00:00','2024-06-24 01:00:00'),
(3,'王五','2024-06-23 01:00:00','2024-06-23 01:00:00'),
(4,'赵六','2024-06-23 01:00:00','2024-06-23 01:00:00');

标签:00,01,06,23,创建,Postgre,2024,person,分区表
From: https://www.cnblogs.com/yifan1028/p/18263815

相关文章

  • PostgreSQL——入门到精通(小白必看)
    PostgreSQL是一个高度可扩展的开源对象关系数据库管理系统(ORDBMS),它以其稳定性、强大的功能和对SQL标准的严格遵守而闻名。第一部分:PostgreSQL简介和安装1.1PostgreSQL概述定义:PostgreSQL是一个高度可扩展的开源对象关系数据库系统,支持丰富的数据类型和并发控制机制。优势:强......
  • 2.创建表和数据类型
    --切换数据库useDBTESTifexists(select*fromsys.tableswherename='Department'andtype='U')----如果有这个名称(DBTES)的数据库,并且type的值为U(用户创建的)droptableDepartment--删除表--类型:--char:定长,char(10),无论存储的数据是否到了10个字节,都要占用10......
  • Windows Api如何创建一个快捷方式并且在开始菜单搜索到自己的应用
     原文链接:http://cshelloworld.com/home/detail/1804473083243925504当我们点击win10系统搜索框的时候,输入名称,win10会帮助我们匹配到对应的应用。这里搜索框实际上就是windows系统的开始菜单。接下来我们随便找一个应用,右键,然后点击打开文件位置,我们来看下这个EveryThing的......
  • 【测试文章搬运】创建泛型和测试套件
    创建泛型和测试套件泛型根据字面概念,通用词可以作为整个组或类的描述。在自动化应用程序时,我们会遇到各种端到端场景。端到端场景可能由几个简单的功能组成。因此,这些功能中的许多功能只需稍加修改或几乎无需修改即可作为多个测试脚本的通用功能。因此,建议创建一个通用类,其中......
  • 探索PostgreSQL的JSON宝石:深入掌握JSON数据处理
    探索PostgreSQL的JSON宝石:深入掌握JSON数据处理引言在数据驱动的世界中,JSON已成为数据交换的事实标准。PostgreSQL,作为一款领先的关系型数据库管理系统,通过其强大的JSON支持,为开发者提供了丰富的工具来存储、查询和处理JSON数据。本文将深入探讨PostgreSQL中的JSON特性,引......
  • NXopen 二次开发 NXOpen::CurveCollection类 创建椭圆CreateEllipse
    NXOpen::NXMatrix*wcsNXMatrix; wcsNXMatrix=workPart->WCS()->CoordinateSystem()->Orientation(); NXOpen::Point3dcenter={0.0,0.0,0.0}; double majorRadius=2; double minorRadius=1; double startAngle=0; double endAngle=PI; d......
  • HTML语言创建黑客
     是一个示例的HTML代码,可以用于创建一个黑客帝国风格的弹窗,并且包含关闭按钮:<!DOCTYPEhtml><html><head><style>/*黑客帝国风格的弹窗样式*/.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,......
  • 【VMware vSphere】使用RVTools中的PowerShell脚本创建导出vSphere环境信息的自动化任
    RVTools是VMware生态系统中一个非常受欢迎且免费的Windows实用工具,用于收集并显示VMwarevSphere环境中的相关信息,如虚拟机、主机及集群等相关配置。RVTools利用VMwarevSphereManagementSDK8.0和CISRESTAPI提供的丰富数据来直接获取和收集信息,这在管理员对VMwa......
  • 【机器学习】在【R语言】中的应用:结合【PostgreSQL数据库】的【金融行业信用评分模型
    目录1.数据库和数据集的选择1.准备工作2.PostgreSQL安装与配置3.R和RStudio安装与配置2.数据导入和预处理1.连接数据库并导入数据1.连接数据库2.数据检查和清洗1.数据标准化2.拆分训练集和测试集3.特征工程1.生成新特征2.特征选择4.模型训练和评估1.逻辑回归2.......
  • QT中子工程的创建,以及如何在含有库的子工程项目中引用主项目中的资源文件
    1、背景在qt中创建多项目类型,如下:CustomDll表示其中的一个动态库子项目;CustomLib表示其中的一个静态库子项目;MyWidget表示主项目窗口(main函数所在项目);2、qrc资源的共享如何在CustomDll和CustomLib等子项目中也同样使用MyWidget项目中的qrc资源呢???直接使用即可,因......