亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

mysql分區(qū)表學(xué)習(xí)之日期分區(qū)

 更新時(shí)間:2023年08月03日 08:34:30   作者:Phil_xian  
這篇文章主要給大家介紹了關(guān)于mysql分區(qū)表學(xué)習(xí)之日期分區(qū)的相關(guān)資料,分區(qū)是一種表的設(shè)計(jì)模式,通俗地講表分區(qū)是將一大表,根據(jù)條件分割成若干個(gè)小表,需要的朋友可以參考下

1.創(chuàng)建分區(qū)表

CREATE TABLE `api_log` (
  `requestId` varchar(64) NOT NULL COMMENT '調(diào)用的唯一標(biāo)示',
  `systemCode` varchar(64) NOT NULL COMMENT '業(yè)務(wù)系統(tǒng)編碼',
  `tongID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `tong_time`  timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `pt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '分區(qū)字段',
  PRIMARY KEY (`tongID`,`requestId`,`pt`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='日志信息表'
/*!50100 PARTITION BY RANGE (TO_DAYS(pt))
(PARTITION p20230510 VALUES LESS THAN (739015) ENGINE = InnoDB,
 PARTITION p20230511 VALUES LESS THAN (739016) ENGINE = InnoDB) */;

2.查看分區(qū)

-- 01 查詢單分區(qū)
 SELECT * from api_log partition (p20230510)

-- 02 查看所有分區(qū)

SELECT
    PARTITION_NAME,
    TABLE_ROWS 
FROM
    INFORMATION_SCHEMA.PARTITIONS 
WHERE
    TABLE_NAME = 'api_log';

3.添加分區(qū)

-- 添加分區(qū)
ALTER TABLE hz_api_log_delta add PARTITION (PARTITION p20230512 VALUES LESS THAN (TO_DAYS('2023-05-12')));

4.存儲(chǔ)過(guò)程:分區(qū)刪除與創(chuàng)建

delimiter //
CREATE  PROCEDURE `pro_create_del_pt`()
BEGIN
	#Routine body goes here...
## 01.新建后面兩天的分區(qū)
## 02獲取當(dāng)前時(shí)間
SELECT CONCAT('p',DATE_FORMAT(DATE_ADD(NOW(),INTERVAL 2 DAY),'%Y%m%d')) into @pname;
SELECT DATE_ADD(NOW(),INTERVAL 2 DAY) into @pdate;
#刪除的分區(qū)時(shí)間
SELECT  DATE_FORMAT(DATE_ADD(NOW(),INTERVAL -17 DAY) ,'%Y%m%d') into @ddate;
## 03新增分區(qū)
-- ALTER TABLE api_log add PARTITION (PARTITION p20230509 VALUES LESS THAN (TO_DAYS(DATE_ADD(NOW(),INTERVAL 1 DAY))));
		set @sql_add_p=concat("ALTER TABLE api_log add PARTITION (PARTITION ",@pname,"  VALUES LESS THAN (TO_DAYS('",@pdate,"')))");
	prepare sql_add_p from @sql_add_p;
	EXECUTE sql_add_p ;
	DEALLOCATE PREPARE sql_add_p;	
## 04 刪除分區(qū)
#alter table api_log drop partition p20230507;
		set @sql_del_p=concat("ALTER TABLE api_log drop PARTITION p",@ddate);
	prepare sql_del_p from @sql_del_p;
	EXECUTE sql_del_p ;
	DEALLOCATE PREPARE sql_del_p;	
END
 //
delimiter ;

5.事件定時(shí)

-- 創(chuàng)建事件
delimiter $$
create event event_pro_create_del_pt
on schedule 
	every 1 DAY 
	STARTS '2023-05-10 20:00:00 '
	comment '每日20:00執(zhí)行'
DO call pro_create_del_pt();
$$
delimiter ;
-- 查看事件
show events;
或者
select * from mysql.event;

6.觸發(fā)器設(shè)計(jì):子表每插入一行,總表獲得一行

-- 創(chuàng)建事件
delimiter $$
CREATE  TRIGGER `trigger_api_log` AFTER INSERT ON `api_log` 
FOR EACH ROW BEGIN
insert into hz_api.api_log_all 
(requestId,systemCode,sjly_part) VALUES
 (NEW.requestId,NEW.systemCode,'區(qū)縣');
end;
$$
delimiter ;

7.創(chuàng)建索引

--  創(chuàng)建普通索引:在tong_time字段
ALTER TABLE db_base.api_log ADD INDEX index_name ( tong_time );
-- 查看索引
show index from db_base.api_log;

8.添加枚舉型字段

ALTER TABLE db_base.api_log add SJLY_PART enum('線上','線下') default null COMMENT '數(shù)據(jù)來(lái)源';

總結(jié) 

到此這篇關(guān)于mysql分區(qū)表學(xué)習(xí)之日期分區(qū)的文章就介紹到這了,更多相關(guān)mysql日期分區(qū)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用mss2sql工具將SqlServer轉(zhuǎn)換為Mysql全記錄

    使用mss2sql工具將SqlServer轉(zhuǎn)換為Mysql全記錄

    上篇文章我們講訴了在mssql數(shù)據(jù)轉(zhuǎn)換成mysql數(shù)據(jù)中,用Navicat Premium導(dǎo)入數(shù)據(jù)很完美,但是創(chuàng)建表的時(shí)候數(shù)據(jù)類型轉(zhuǎn)換不是很完美,本文我們來(lái)講訴下用mss2sql工具來(lái)創(chuàng)建表,順便說(shuō)下導(dǎo)入數(shù)據(jù)
    2014-08-08
  • MySQL性能優(yōu)化 出題業(yè)務(wù)SQL優(yōu)化

    MySQL性能優(yōu)化 出題業(yè)務(wù)SQL優(yōu)化

    根據(jù)用戶的作答結(jié)果出練習(xí)卷,題目的優(yōu)先級(jí)為:未做過(guò)的題目>只做錯(cuò)的題目>做錯(cuò)又做對(duì)的題目>只做對(duì)的題目。
    2010-08-08
  • Mysql 1864 主從錯(cuò)誤解決方法

    Mysql 1864 主從錯(cuò)誤解決方法

    本文給大家?guī)?lái)了Mysql 1864 主從錯(cuò)誤解決方法,本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-08-08
  • ERROR 1862 (HY000): Your password has expired. To log in you must change it using a .....

    ERROR 1862 (HY000): Your password has expired. To log in you

    當(dāng)你在安裝 MySQL過(guò)程中,通過(guò)mysqld --initialize 初始化 mysql 操作后,生成臨時(shí)密碼后,沒有直接進(jìn)行 MySQL連接,中途重啟服務(wù)或者重啟機(jī)器等,導(dǎo)致密碼失效問(wèn)題,怎么處理呢,感興趣的朋友一起看看吧
    2019-11-11
  • 刪除mysql數(shù)據(jù)庫(kù)中的重復(fù)數(shù)據(jù)記錄

    刪除mysql數(shù)據(jù)庫(kù)中的重復(fù)數(shù)據(jù)記錄

    mysql中select distinct * from text不能顯示不重復(fù)的記錄,而是直接全部顯示
    2008-06-06
  • mysql啟動(dòng)的error 2003和1067錯(cuò)誤問(wèn)題解決方法

    mysql啟動(dòng)的error 2003和1067錯(cuò)誤問(wèn)題解決方法

    mysql安裝好經(jīng)常發(fā)現(xiàn)無(wú)法正常啟動(dòng)碰到最多的是error 2003的錯(cuò)誤,經(jīng)研究在此附上解決方法,希望可以幫助有類似問(wèn)題的朋友
    2013-09-09
  • 淺談開啟magic_quote_gpc后的sql注入攻擊與防范

    淺談開啟magic_quote_gpc后的sql注入攻擊與防范

    通過(guò)啟用php.ini配置文件中的相關(guān)選項(xiàng),就可以將大部分想利用SQL注入漏洞的駭客拒絕于門外
    2012-01-01
  • mysql alter table 修改表命令詳細(xì)介紹

    mysql alter table 修改表命令詳細(xì)介紹

    MYSQL ALTER TABLE命令用于修改表結(jié)構(gòu),例如添加/修改/刪除字段、索引、主鍵等等,本文章通過(guò)實(shí)例向大家介紹MYSQL ALTER TABLE語(yǔ)句的使用方法,需要的朋友可以參考一下。
    2016-10-10
  • 如何使用MySQL查詢一年中每月的記錄數(shù)

    如何使用MySQL查詢一年中每月的記錄數(shù)

    這篇文章主要給大家介紹了關(guān)于如何使用MySQL查詢一年中每月的記錄數(shù)的相關(guān)資料,文中通過(guò)實(shí)例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-09-09
  • win10下mysql5.7.21安裝詳細(xì)過(guò)程

    win10下mysql5.7.21安裝詳細(xì)過(guò)程

    這篇文章主要為大家詳細(xì)介紹了win10下mysql5.7.21安裝的詳細(xì)過(guò)程,以及安裝Mysql 5.7.21遇到的問(wèn)題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02

最新評(píng)論