我正在尋找一種方法來解決以下問題:試圖得到一個星期的第一天和最後一天的日期,給定一個任務。日期
顯示星期(例如1-52),該星期的開始和結束日期以及計數。
的一週,是想通是這樣的:TO_CHAR(「WW」)
,但我不知道如何讓那些數週的第一個和最後日期。
我該如何做到這一點與SqlPlus?
編輯:
鑑於:包含日期的列的表。
我正在尋找一種方法來解決以下問題:試圖得到一個星期的第一天和最後一天的日期,給定一個任務。日期
顯示星期(例如1-52),該星期的開始和結束日期以及計數。
的一週,是想通是這樣的:TO_CHAR(「WW」)
,但我不知道如何讓那些數週的第一個和最後日期。
我該如何做到這一點與SqlPlus?
編輯:
鑑於:包含日期的列的表。
嘗試是這樣的:
SELECT to_char(date_col, 'iw') w, trunc(date_col, 'd') st, trunc(date_col, 'd')+6 et
FROM your_table
參考:
整個一週的第一天,嘗試next_day(dateColumn-8, 'Monday')
對於本週的最後日期,儘量next_day(dateColumn-1, 'Sunday')
什麼是dt-8? dt是列 – Fallenreaper 2013-02-21 03:51:39
我希望現在更清楚。 – hd1 2013-02-21 03:54:05
'dt'是給定的任意日期 - 可能來自表格。 'dt-8'在指定日期前8天; 'dt-1'是前一天。 – 2013-02-21 03:54:29
給你提的SQLPlus,我們可以認爲這是甲骨文? – Joe 2013-02-21 03:47:06
是的,你可以。我的同事有我引用它作爲SQLPLus,但我最稱它爲oracle。 – Fallenreaper 2013-02-21 03:48:41
一個密切相關的問題的答案,[如何計算給定日期的星期數?](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