返回顶部
首页 > 资讯 > 数据库 >MySQL创建分区方法,及分区中常用SQL示例
  • 221
分享到

MySQL创建分区方法,及分区中常用SQL示例

数据库sqlserver 2023-08-31 08:08:38 221人浏览 泡泡鱼
摘要

本文总结如何通过sql创建表分区,查看分区,以及日常如何使用分区表。 通过sql语句创建 mysql > CREATE TABLE `database_test`.`table_test`  (  `id` int NOT NULL AUT

本文总结如何通过sql创建表分区,查看分区,以及日常如何使用分区表。

通过sql语句创建

mysql > CREATE TABLE `database_test`.`table_test`  (  `id` int NOT NULL AUTO_INCREMENT,  `name` varchar(50) NOT NULL,  `create_time` datetime(0) NOT NULL,  PRIMARY KEY (`id`,`create_time`)) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8PARTITioN BY RANGE(YEAR(create_time))(    PARTITION partition1 VALUES LESS THAN (2020),    PARTITION partition2 VALUES LESS THAN (2021));

查看分区情况:

mysql> SELECT PARTITION_NAME        ,PARTITION_METHOD        ,PARTITION_EXPRESSION        ,PARTITION_DESCRIPTION        ,TABLE_ROWS        ,SUBPARTITION_NAME,SUBPARTITION_METHOD    FROM infORMation_schema.PARTITIONS WHERE TABLE_SCHEMA=SCHEMA() AND TABLE_NAME='your_table';

分区中常用SQL示例
1、查询指定分区内的数据:

mysql>  select * from `your_table` partition(your_partition_name);

 2、对已存在的表进行分区

mysql> ALTER TABLE `your_table` PARTITION by HASH(YEAR(`day`)) PARTITIONS 10;

删除表的所有分区

mysql>  ALTER TABLE `your_table` REMOVE PARTITIONING;


4、删除表的特定分区

mysql> ALTER TABLE `your_table` DROP PARTITION your_partition_name;


5、 删除表单个分区内的数据

mysql >  ALTER TABLE `your_table` TRUNCATE PARTITION your_partition_name;

把分区内的数据复制到另一张表

mysql> INSERT INTO `your_new_table` SELECT * FROM `your_old_table` PARTITION(your_partition_name);

新增分区

mysql> alter table `your_table` add partition(partition your_partition_name values less than(2021));


8、原表已有主键,需要新增复合主键,则需要先丢弃再重新设置主键。

mysql> ALTER TABLE `your_database`.`your_table` DROP PRIMARY KEY,ADD PRIMARY KEY (`id`, `login_time`) USING BTREE;

查询分区信息。

mysql> SELECT PARTITION_NAME,PARTITION_METHOD,PARTITION_EXPRESSION,PARTITION_DESCRIPTION,TABLE_ROWS,SUBPARTITION_NAME,SUBPARTITION_METHODFROM information_schema.PARTITIONS WHERE TABLE_SCHEMA=SCHEMA() AND TABLE_NAME='your_table';

原表设置了MAXVALUE分区,若想添加新分区又不丢失数据,则需要重新分区。

Alter table `your_table` partition by RANGE(YEAR(login_time))(partition p1 values less than (2014),partition p2 values less than (2015),partition p3 values less than (2016),partition p4 values less than (2019),partition p5 values less than (MAXVALUE));

来源地址:https://blog.csdn.net/qiuweifan/article/details/131268321

您可能感兴趣的文档:

--结束END--

本文标题: MySQL创建分区方法,及分区中常用SQL示例

本文链接: https://lsjlt.com/news/384911.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL创建分区方法,及分区中常用SQL示例
    本文总结如何通过sql创建表分区,查看分区,以及日常如何使用分区表。 通过sql语句创建 mysql > CREATE TABLE `database_test`.`table_test`  (  `id` int NOT NULL AUT...
    99+
    2023-08-31
    数据库 sqlserver
  • MySql创建分区的方法实例
    目录一、Mysql分区类型二、RANGE分区二、Hash分区三、Key分区四、List分区附:查询分区,各区表数据量总结友情链接一、Mysql分区类型 1、RANGE 分区:基于属于...
    99+
    2024-04-02
  • mysql创建表分区详细介绍及示例
    mysql创建表分区详细介绍及示例 1. 基本概念1.1 什么是表分区?1.2 表分区与分表的区别1.3 表分区有什么好处?1.4 分区表的限制因素 2. 如何判断当前MySQL是否支持分区?3.分区类型详解3.1 MySQL支...
    99+
    2023-08-17
    mysql 数据库 java
  • 创建MySQL子分区方法
    本文主要给大家介绍创建MySQL子分区方法,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下创建MySQL子分区方法吧。CREATE TABL...
    99+
    2024-04-02
  • mysql创建表分区的实现示例
    目录1. 基本概念1.1 什么是表分区?1.2 表分区与分表的区别1.3 表分区有什么好处?1.4 分区表的限制因素2. 如何判断当前mysql是否支持分区?3.分区类型详解3.1 MySQL支持的分区类型有哪些?3.2...
    99+
    2024-01-29
    mysql 创建表分区 mysql 表分区创建
  • mysql中怎么创建表分区
    今天就跟大家聊聊有关mysql中怎么创建表分区,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 1.RANGE 分区: CREATE TABLE ...
    99+
    2024-04-02
  • MySQL中如何创建Key分区表
    本篇文章为大家展示了MySQL中如何创建Key分区表,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 按照KEY进行分区类似于按照HAS...
    99+
    2024-04-02
  • mybatis创建表分区的方法是什么
    在MyBatis中创建表分区可以通过在SQL语句中使用分区关键字来实现。具体方法如下: 在创建表时指定分区关键字,例如: CRE...
    99+
    2024-04-02
  • win7创建逻辑分区的方法(diskpart命令使用方法)
    win7创建逻辑分区 许多用户在安装Win7时都遇,安装程序创建的都是主分区,并没有创建逻辑分区的任何选项,这样的情况导致创建4个主分区后剩余的空间无法继续分配的情况,这使得许多用户情何以堪。很多用户都向小编反映该问题,...
    99+
    2023-06-04
    win7分区 diskpart 方法 分区 逻辑 命令
  • 【mysql表分区系】mysql创建分区表提示A PRIMARY KEY must include all columns in the table‘s partitioning function
    首先声明下我这边使用的mysql版本是5.7.29版本,当然下面的问题我这边也是基于这个版本。这里因为没有考证其他版本是否也会有这些问题,可自行官方文档来查阅资料 一个唯一键必须包含表分区函数所有的列,根据这个错误提示我们大概就知道怎么处理...
    99+
    2023-10-21
    mysql 数据库
  • Java中HashSet原理及常用方法的示例分析
    小编给大家分享一下Java中HashSet原理及常用方法的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一. HashSet概述HashSet是Java集...
    99+
    2023-06-02
  • 云主机创建分区的方法是什么
    创建云主机分区的方法有多种,以下是一种常见的方法:1. 登录到云主机的操作系统。2. 执行磁盘管理工具,例如Windows系统下可以...
    99+
    2023-09-17
    云主机
  • linux创建交换分区的方法是什么
    在Linux系统中,可以通过以下步骤创建交换分区:1. 打开终端或命令行界面。2. 使用`fdisk`命令将一个磁盘分区设置为交换分...
    99+
    2023-08-18
    linux
  • SQL中rollup和cube分组函数用法及示例分析
    SQL中rollup和cube分组函数用法及示例分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。首先,它计算GROUP BY子句中指定的...
    99+
    2024-04-02
  • MySQL中SQL优化建议的示例分析
    这期内容当中小编将会给大家带来有关MySQL中SQL优化建议的示例分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。今天早上看到同事的一个优化需求,优化的时间其实不多,但...
    99+
    2024-04-02
  • Win8中如何创建OEM分区对GPT硬盘应用OEM分区属性
      现在预装 Win8 的电脑大多是采用新版 UEFI 固件 + GPT 格式磁盘,不再像以前的 BIOS + MBR。采用 UEFI 和 GPT 的好处多多,例如可实现安全启动等更多新特性,和支持更多的硬盘分区、更大的...
    99+
    2023-06-04
    win8 OEM分区 硬盘 GPT OEM 分区 属性
  • 数据库中如何按时间及ID进行分区表创建事例
    小编给大家分享一下数据库中如何按时间及ID进行分区表创建事例,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Oracle表分区优点:1、 增强可用性:如果表的一个分区由于系统故障而不能使用,...
    99+
    2024-04-02
  • Linux创建分区并格式化的方法是什么
    在Linux中,可以使用以下步骤来创建分区并格式化:1. 打开终端,并以root用户或具有管理员权限的用户身份登录。2. 使用`fd...
    99+
    2023-08-11
    Linux
  • linux中CentOS/redhat 6.5 LVM分区使用的示例分析
    小编给大家分享一下linux中CentOS/redhat 6.5 LVM分区使用的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1, 介绍LVM是逻辑盘卷...
    99+
    2023-06-12
  • [沫沫金原创]Oracle创建按天自动分区并增加按列值子分区的实现方法
    Oracle创建按天自动分区使用官方提供的 interva 功能子分区正常写,核心就是配置子分区模板,配置后才可以根据列值自动创建配置好的分区。 直接看源码CREATE TABLE "C...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作