PolarDB-X 1.0-SQL 手册-拆分函数使用说明-YYYYMM

简介: 本文将介绍YYYYMM函数的使用方式。

使用限制

  • 拆分键的类型必须是DATE、DATETIME或TIMESTAMP中的一种。
  • 使用YYYYMM函数前,需要先确定所需的总物理分表数,您可以通过确定循环周期(如2年)来确定总的物理分表数。因为YYYYMM函数仅支持为循环周期内的每一个月创建一张独立分表。
  • 当月份经过一个循环周期后(如2012-03经过一个2年的循环周期后是2014-03),相同月份有可能被路由到同一个分库分表,具体被分到哪个分表受实际的分表数目影响。
  • PolarDB-X实例的版本需为5.1.28-1320920或以上版本,关于实例版本请参见版本说明

路由方式

根据拆分键时间值的年份与月份计算哈希值,然后再按分库数进行取余,完成路由计算。

例如,YYYYMM('2012-12-31 12:12:12')函数等价于按照(2012x12+12)%D(D是分库数目)公式计算出2012-12-31是2012年的第12个月。

使用场景

适合于需要按年份与月份进行分库的场景,建议结合该函数与tbpartition by YYYYMM(ShardKey)一起使用。

使用示例

假设PolarDB-X里已经拥有8个物理库,现有如下需求:

  • 按年月进行分库。
  • 同一个月的数据都能落在同一张分表,且两年以内的每一个月都能单独对应一张分表。
  • 查询时带上分库分表键后能直接将查询落在某个物理分库的某个物理分表。

YYYYMM分库函数即可满足上述要求。上述需求中提到两年以内的每个月都需对应一张分表(即一个月一张表),由于一年有12个月,所以需要创建24(12x2=24)张物理分表才能满足上述需求。PolarDB-X已有8个分库,所以每个分库应该建3(24/8=3)张物理分表。

则您可以使用如下建表DDL:

create table test_yyyymm_tb ( 
        id int, 
        name varchar(30) DEFAULT NULL,  
  create_time datetime DEFAULT NULL,
  primary key(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 
dbpartition by YYYYMM(create_time)
tbpartition by YYYYMM(create_time) tbpartitions 3;
相关文章
|
11月前
|
SQL 数据可视化 关系型数据库
MCP与PolarDB集成技术分析:降低SQL门槛与简化数据可视化流程的机制解析
阿里云PolarDB与MCP协议融合,打造“自然语言即分析”的新范式。通过云原生数据库与标准化AI接口协同,实现零代码、分钟级从数据到可视化洞察,打破技术壁垒,提升分析效率99%,推动企业数据能力普惠化。
895 3
|
SQL 存储 关系型数据库
第二篇:关系型数据库的核心概念与 SQL 基础
本篇内容深入浅出地讲解了关系型数据库的核心概念与SQL基础,适合有一定计算机基础的学习者。文章涵盖数据库的基本操作(CRUD)、数据类型、表的创建与管理等内容,并通过实例解析SELECT、INSERT、UPDATE、DELETE等语句的用法。此外,还推荐了多种学习资源与实践建议,帮助读者巩固知识。学完后,你将掌握基础数据库操作,为后续高级学习铺平道路。
870 1
|
SQL 存储 关系型数据库
关系型数据库SQLserver基本 SQL 操作
【7月更文挑战第28天】
361 4
|
SQL 关系型数据库 分布式数据库
利用 PolarDB PG 版向量化引擎,加速复杂 SQL 查询!完成任务领发财新年抱枕!
利用 PolarDB PG 版向量化引擎,加速复杂 SQL 查询!完成任务领发财新年抱枕!
509 14
|
SQL 安全 关系型数据库
关系型数据库SQL server DELETE 语句
【8月更文挑战第3天】
671 10
|
SQL 关系型数据库 数据库
关系型数据库SQL server UPDATE 语句
【8月更文挑战第3天】
936 10
|
SQL 关系型数据库 BI
关系型数据库SQL server INSERT 语句
【8月更文挑战第3天】
730 9
|
SQL 关系型数据库 分布式数据库
PolarDB产品使用问题之遇到慢SQL问题,该如何解决
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
SQL 关系型数据库 数据库
|
SQL 关系型数据库 数据库

热门文章

最新文章

相关产品

  • 云原生分布式数据库 PolarDB-X