Partitioning

Sybase ASE 15.5:為分區創建自定義函式

  • June 23, 2016

我想創建一個分區表來儲存消息。

如果消息屬於“偶數週數”=> 轉到 partEven 分區!如果消息屬於“奇數週數”=> 轉到 partOdd 分區!

這是我損壞的程式碼:

CREATE TABLE myTable (
   id NUMERIC(18,0) IDENTITY,
   message_date_time DATETIME,
   PRIMARY KEY (id)
   )partition by list (message_date_time)
       (partEven datepart(week, message_date_time) % 2 == 0,
        partOdd datepart(week, message_date_time) % 2 == 1
       )

有人可以幫我語法嗎?(如果可以的話)

似乎我只被允許在“message_date_time”常量上路由記錄,但我想對應用於“message_date_time”的函式的結果進行路由。

請幫忙 :)

您不能編寫自己的分區函式。您需要做的是創建一個附加列,分配一個由您要使用的函式產生的值,然後對該列進行分區。不幸的是,您不能對計算列進行分區,這將是最簡單的解決方案。

引用自:https://dba.stackexchange.com/questions/141732