Oracle中的時區轉換

2021-10-06 12:12:59 字數 2733 閱讀 9277

在下面找到一些有關oracle中時區轉換的有用資訊。 希望這對他們中的許多人有所幫助,因為我們從事的所有實時專案都遵循不同的時區(est,pst等),您可能需要根據需要將它們轉換為特定的專案:

insert into dates values(6, to_date('09/20/05 23:15', 'mm/dd/yy hh24:mi'));

--the contents of the table now look like this:

1 09/14/05, 21:08

2 09/27/05, 00:00

3 10/02/05, 22:05

4 09/01/05, 17:01

5 09/12/05, 14:30

6 09/20/05, 23:15

更改時區

oracle中的日期格式不包含時區資訊,但是資料庫中包含。 要找出時區設定,請執行以下查詢:

select dbtimezone from dual;

dbtime

——-04:00

可以使用以下命令來更新時區:
alter database set time_zone = '-05:00';

您可以在其中指定格林威治標準時間的偏移量或v $ timezone_names檢視中列表的有效時區。

注意,這是為數不多的「 v $」檢視中的少數檢視之一。

切換時區

函式new_time用於將時間轉換為不同的時區。 為了說明這一點,我們將看一下日期檔案中的條目5。

select entry, to_char(entry_date, 'mm/dd/yy hh:mi am') e_date from dates where entry=5;

entry       e_date    

5             09/12/05 02:30 pm

該資料庫是美國東部時間,但我們要顯示美國中部時間。

select entry, to_char(new_time(entry_date, 'est', 'cst'), 'mm/dd/yy hh:mi am') e_date from dates where entry=5;

entry       e_date

5             09/12/05 01:30 pm

在這裡,我們可以清楚地看到時間轉換為中部時間。

請注意,new_time函式是在日期欄位上執行的,而不是在to_char上執行的。

現在讓我們在太平洋時間抓緊這次:

select entry, to_char(new_time(entry_date, 'est', 'pst'), 'mm/dd/yy hh:mi am') e_date from dates where entry=5;

entry       e_date

5            09/12/05 11:30 am

現在,我們不僅看到時間轉換了,而且一天中的時間已經從pm變為am。

現在讓我們看一下條目6:

select entry, to_char(entry_date, 'mm/dd/yy hh:mi am') e_date from dates where entry=6;

entry       e_date

6             09/20/05 11:15 pm

我們再次假設該時間戳記為美國東部時間,但讓我們將其轉換為格林威治標準時間。

select entry, to_char(new_time(entry_date, 'est', 'gmt'), 'mm/dd/yy hh:mi am') e_date from dates where entry=6;

entry       e_date

6             09/21/05 04:15 am

這不僅顯示了小時數的變化,而且還顯示了其時區的此項的日期顯示正確。

當然,new_time函式可以以相同的方式用於插入。

如果您允許來自不同地理區域的人進行輸入,這將很有用。

在這裡,我們將太平洋時間的條目轉換為東部:

碼:

insert into dates

values (7,

new_time(to_date(』09/22/05 10:28 am』, 『mm/dd/yy hh:mi am』), 『pst』, 『est』));

select entry, to_char(entry_date, 『mm/dd/yy hh:mi am』) e_date from dates where entry=7;

entry       e_date

7             09/22/05 01:28 pm

因此,我們已將太平洋時間10:28 am轉換為東部時間1:28 pm,因此表中的所有條目都是一致的。

當然,在執行插入操作時,我們需要將to_date函式放入new_time函式中,以便在嘗試轉換之前將文字字串轉換為日期格式。

from:

C 中時區的查訊和轉換

我們會需要把 local 時間轉換成某一時區的時間,這裡用.net 的內建方法來實現 utc 時間 datetime dt timezoneinfo.converttimetoutc datetime.now,timezoneinfo.local console.writeline dt.tostr...

時區轉換函式

typedef struct int year int month int day date typedef stuct int hour int minute int second time typedef struct date date time time datetime 在時區的定義上,有...

Python時區轉換

原文 最近工作中遇到了乙個問題 我的server和client不是在乙個時區,server時區是edt,即美國東部時區,client,就是我自己的電腦,時區是中國標準時區,東八區。處於測試需要,我需要向server傳送乙個時間,使得server在這個時間戳去執行一些動作。這個時間戳通常是當前時間加2...