2013-02-21 141 views
0

我正在尋找一種方法來解決以下問題:試圖得到一個星期的第一天和最後一天的日期,給定一個任務。日期

顯示星期(例如1-52),該星期的開始和結束日期以及計數。

的一週,是想通是這樣的:TO_CHAR(「WW」)

,但我不知道如何讓那些數週的第一個和最後日期。

我該如何做到這一點與SqlPlus?

編輯:

鑑於:包含日期的列的表。

+0

給你提的SQLPlus,我們可以認爲這是甲骨文? – Joe 2013-02-21 03:47:06

+0

是的,你可以。我的同事有我引用它作爲SQLPLus,但我最稱它爲oracle。 – Fallenreaper 2013-02-21 03:48:41

+0

一個密切相關的問題的答案,[如何計算給定日期的星期數?](http://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given -a-date/275024#275024),可以幫助你瞭解一些理論背景。在此期間,查看ISO 8601星期數字格式說明符。本週的第一天和最後一天是ISO 8601日曆中的星期一和星期天。如果您將「星期幾」作爲數字D(在1-7範圍內),則可以從日期中減去(D-1)天以獲得第一天,並添加6天以獲得最後一天一週中的。 – 2013-02-21 03:53:02

回答

1

整個一週的第一天,嘗試next_day(dateColumn-8, 'Monday')

對於本週的最後日期,儘量next_day(dateColumn-1, 'Sunday')

+0

什麼是dt-8? dt是列 – Fallenreaper 2013-02-21 03:51:39

+0

我希望現在更清楚。 – hd1 2013-02-21 03:54:05

+0

'dt'是給定的任意日期 - 可能來自表格。 'dt-8'在指定日期前8天; 'dt-1'是前一天。 – 2013-02-21 03:54:29

相關問題