Oracle Range дял, базиран на Unix Epoch Timestamp

Възможно ли е да разделим таблица, която има уникална колона като клеймо за време, съхранена в oracle в Unix Epoch format.

Има много опции, които имаме спрямо дяла на oracle, но искам да знам как можем да разделим таблица, която има клеймо за време на Unix Epoch, съхранено на ниво база данни.

Тъй като тази колона е спомената в предния край, искаме да направим разделяне на диапазона само в тази колона.

Ето как изглежда структурата на таблицата.

Timestamp      number 
Reference id   number
Value          integer

Таблицата ще съхранява критични данни за една година, а колоната за времево клеймо съхранява точното времево клеймо на unix епохата. Ще ни е интересно да разделим таблицата на 12 дяла въз основа на стойности на времеви клейма за всеки месец.

Ето как unix timestamp, който преобразуваме във формат за дата, използвайки по-долу sql.

select (TO_DATE('1970-01-01','YYYY-MM-DD') + unix_timestamp / 86400000) from dbname;

person user3493124    schedule 30.09.2014    source източник


Отговори (1)


Вярвам, че Oracle съхранява вътрешно времеви стойности по същия начин - брой секунди (дробни части от секунди) от полунощ. И точността е до наносекунди - timestamp(9). Както и да е, няма значение как се съхранява вътрешно. Бих препоръчал да използвате стандартен тип данни TIMESTAMP. И да, възможно е да се изграждат дялове на колона TIMESTAMP

person Rusty    schedule 30.09.2014