91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle怎么使用range分區并根據時間列自動創建分區

發布時間:2023-04-18 15:22:28 來源:億速云 閱讀:210 作者:iii 欄目:開發技術

這篇“Oracle怎么使用range分區并根據時間列自動創建分區”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Oracle怎么使用range分區并根據時間列自動創建分區”文章吧。

Oracle使用range分區,根據時間列自動創建分區

-- Create table
create 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')) --月分區用month,年分區用year
(
    partition P_20230411 values less than (TO_DATE('2023-04-12 00:00:00,"SYYYY-MM-DD HH24:MI:SS"))
        tablespace TB_SAMS
        pctfree 10
        initrans 1
        maxtrans 255
        storage
        (
            initial 1M
            next 1M
            minextents 1
            maxextents unlimited
        )
);
- - Add comments to the table
comment on table MY_TEST
    is ‘測試表';
Add comments to the columns
comment on column MY_TEST.id
    is ‘主鍵id';
comment on column MY_TEST.name
    is ‘名稱';
comment on column MY_TEST.today
    is ‘時間';

- - Create/Recreate indexes
create index MY_TEST_INDEX on MY_TEST (id)
    tablespace TB_SAMS
    pctfree 10
    initrans 2
    maxtrans 255
    storage
    (
        initial 64K
        next 1M
        minextents 1
        maxextents unlimited
);
- -Grant/Revoke object privileges
grant 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) ;

附錄:oracle 根據日期自動生成分區表

oracle 根據日期自動生成分區表

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是一個數字,c是一個字符串,
表明x的單位,這個函數把x轉為interval day to second數據類型

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

numtoymintervalnumtodsinterval函數類似,將x轉為interval year to month數據類型

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

格式:NumToYMInterval(n, interval_unit);

n: 數值類型

interval_unit: ‘YEAR’, ‘MONTH’ ,或其他可以轉換成這兩個值之一的表達式

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

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

小數會被計算成整數后,再做計算:

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

如果執行含有函數的sql時報錯:”INTERVAL YEAR TO MONTH literal“。不能與數值做運算。

常用用途:

做日期運算時,這個函數非常有用。例如:取一個月后的日期:

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

以上就是關于“Oracle怎么使用range分區并根據時間列自動創建分區”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

商都县| 宜川县| 弥勒县| 涡阳县| 饶平县| 柘荣县| 东乌珠穆沁旗| 阿图什市| 芷江| 伊春市| 义乌市| 库车县| 诸暨市| 栖霞市| 三原县| 乐平市| 尼木县| 康乐县| 镇赉县| 临城县| 保德县| 天祝| 龙里县| 嫩江县| 贡觉县| 蓬安县| 大埔县| 邳州市| 洱源县| 阿拉善右旗| 五家渠市| 寿光市| 温宿县| 禹州市| 柏乡县| 商城县| 尼木县| 海晏县| 佳木斯市| 大冶市| 红安县|