久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Oracle使用range分區(qū)并根據(jù)時(shí)間列自動(dòng)創(chuàng)建分區(qū)

瀏覽:149日期:2023-05-30 16:13:54

Oracle使用range分區(qū),根據(jù)時(shí)間列自動(dòng)創(chuàng)建分區(qū)

-- Create tablecreate table MY_TEST (    id    NUMBER (12) not null,    name    VARCHAR2 (12) not null,    today    TIMESTAMP (6) default SYSDATE)partition by range (today) interval(numtodsinterval(1,"day")) --月分區(qū)用month,年分區(qū)用year(    partition P_20230411 values less than (TO_DATE("2023-04-12 00:00:00,"SYYYY-MM-DD HH24:MI:SS"))tablespace TB_SAMSpctfree 10initrans 1maxtrans 255storage(    initial 1M    next 1M    minextents 1    maxextents unlimited));- - Add comments to the tablecomment on table MY_TEST    is ‘測(cè)試表";Add comments to the columnscomment on column MY_TEST.id    is ‘主鍵id";comment on column MY_TEST.name    is ‘名稱(chēng)";comment on column MY_TEST.today    is ‘時(shí)間";- - Create/Recreate indexescreate index MY_TEST_INDEX on MY_TEST (id)    tablespace TB_SAMS    pctfree 10    initrans 2    maxtrans 255    storage    (initial 64Knext 1Mminextents 1maxextents unlimited);- -Grant/Revoke object privilegesgrant select on MY_TEST to DBVIEW;INSERT INTO MY_TEST VALUES (1,"xxc1",SYSDATE);INSERT INTO MY_TEST VALUES (2,"xxc2"?SYSDATE+1);INSERT INTO MY_TEST VAIUES (3,"xxc3",SYSDATE+2) ;

測(cè)試效果

附錄:oracle 根據(jù)日期自動(dòng)生成分區(qū)表

oracle 根據(jù)日期自動(dòng)生成分區(qū)表

CREATE TABLE my_table (  id NUMBER,  name VARCHAR2(50),  created_date DATE)PARTITION BY RANGE (created_date) INTERVAL (NUMTODSINTERVAL(1, "DAY"))(  PARTITION p1 VALUES LESS THAN (TO_DATE("2022-01-01", "YYYY-MM-DD")));

其中:

numtodsinterval(,) ,x是一個(gè)數(shù)字,c是一個(gè)字符串,
表明x的單位,這個(gè)函數(shù)把x轉(zhuǎn)為interval day to second數(shù)據(jù)類(lèi)型

常用的單位有 (‘day’,‘hour’,‘minute’,‘second’)

numtoymintervalnumtodsinterval函數(shù)類(lèi)似,將x轉(zhuǎn)為interval year to month數(shù)據(jù)類(lèi)型

常用的單位有(‘year’,‘month’)

格式:NumToYMInterval(n, interval_unit);

n: 數(shù)值類(lèi)型

interval_unit: ‘YEAR’, ‘MONTH’ ,或其他可以轉(zhuǎn)換成這兩個(gè)值之一的表達(dá)式

NumToYMInterval(1, ‘YEAR’) :一年后的間隔

NumToYMInterval(-1, ‘MONTH’): 一個(gè)月前

小數(shù)會(huì)被計(jì)算成整數(shù)后,再做計(jì)算:

select sysdate + numtoyminterval(0.1, "MONTH")  from dual;2023-03-21 09:54:37

如果執(zhí)行含有函數(shù)的sql時(shí)報(bào)錯(cuò):”INTERVAL YEAR TO MONTH literal“。不能與數(shù)值做運(yùn)算。

常用用途:

做日期運(yùn)算時(shí),這個(gè)函數(shù)非常有用。例如:取一個(gè)月后的日期:

select sysdate + NumToYMInterval(1, "MONTH") from dual;

到此這篇關(guān)于Oracle使用range分區(qū)并根據(jù)時(shí)間列自動(dòng)創(chuàng)建分區(qū)的文章就介紹到這了,更多相關(guān)Oracle自動(dòng)創(chuàng)建分區(qū)內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: Oracle
主站蜘蛛池模板: 类乌齐县| 闸北区| 兴城市| 固原市| 清徐县| 清水县| 蓬安县| 紫阳县| 内黄县| 龙海市| 随州市| 房产| 福州市| 怀柔区| 武城县| 吴忠市| 仙居县| 镇平县| 洪湖市| 哈尔滨市| 张家界市| 西平县| 固原市| 和龙市| 河池市| 鄂尔多斯市| 五大连池市| 东源县| 淮南市| 锦州市| 宁城县| 卢龙县| 崇文区| 阿拉善盟| 东明县| 卢氏县| 宁德市| 花垣县| 广德县| 博野县| 遂平县|