如何在一週中的任何指定日期使用sysdate獲取當前工作周?我希望有一個sql語句爲我提供本週運行的活動,而不必擁有5個不同的sql語句。這可能嗎?使用系統日期獲取星期一 - 星期五
0
A
回答
1
SELECT SYSDATE
FROM DUAL
;
-- 2013-11-04 11:06:14
SELECT TRUNC(SYSDATE+3) - (TO_CHAR(SYSDATE+3, 'D') - 1)
, TRUNC(SYSDATE+3) - (TO_CHAR(SYSDATE+3, 'D') - 5)
FROM DUAL
;
-- 2013-11-04 00:00:00 2013-11-08 00:00:00
SELECT TRUNC(SYSDATE+2) - (TO_CHAR(SYSDATE+2, 'D') - 1)
, TRUNC(SYSDATE+2) - (TO_CHAR(SYSDATE+2, 'D') - 5)
FROM DUAL
;
-- 2013-11-04 00:00:00 2013-11-08 00:00:00
SELECT TRUNC(SYSDATE+1) - (TO_CHAR(SYSDATE+1, 'D') - 1)
, TRUNC(SYSDATE+1) - (TO_CHAR(SYSDATE+1, 'D') - 5)
FROM DUAL
;
-- 2013-11-04 00:00:00 2013-11-08 00:00:00
SELECT TRUNC(SYSDATE) - (TO_CHAR(SYSDATE, 'D') - 1)
, TRUNC(SYSDATE) - (TO_CHAR(SYSDATE, 'D') - 5)
FROM DUAL
;
-- 2013-11-04 00:00:00 2013-11-08 00:00:00
1
我想你將不得不使用next_day()函數來實現這一點。你將不得不嘗試這個函數的幾個組合來在1個SQL語句中完成它。
這是一些僞代碼。我沒有測試過,但它應該足以讓你開始。
where my_operating_date >= next_day(trunc(sysdate) - interval '7' day, 'MON')
and my_operating_date < next_day(trunc(sysdate) - interval '2' day, 'FRI')
我從this SO thread,解決了前一週獲得了類似的要求修改了pseduo碼。關於這個答案的解釋應該讓你去。請務必嚴格測試邊緣情況,例如當前日期是週一或週五。
相關問題
- 1. 獲取從給定日期星期一到星期五的星期日期
- 2. 如何獲取星期五與星期五作爲開始日期使用mysql
- 3. SQL Server 2012-星期日期星期六到星期五
- 4. 星期五開始「星期五」,php
- 5. 在SQL中使用今天的日期獲取星期日期(星期一)
- 6. 獲取基於給定日期的星期一至星期日
- 7. 使用jquery在javascript中獲取星期五的日期
- 8. 使用星期幾獲取日期
- 9. 使用星期幾獲取日期
- 10. 選擇日期這個星期一和這個星期五之間的日期
- 11. 獲取最近一個星期五的日期SQL
- 12. 獲取星期數從一個星期的日期開始
- 13. PHP獲取這個星期的日期星期一
- 14. 從日期字段獲取星期一星期Hive
- 15. 獲取本週的開始日期和結束日期(星期一從星期一開始,星期日結束)
- 16. 如何獲取星期日,星期一....和星期六字符串在Android系統的語言?
- 17. 獲取日期2星期一前
- 18. Informatica - 獲取星期一的日期號
- 19. 如何使用星期編號獲取一週的星期一日期
- 20. 獲取每個備用星期五的日期
- 21. PHP星期一星期一和星期六日期問題
- 22. C#獲取下一個第N個星期五日期從今天的日期
- 23. 從星期一到星期日獲取當週工作日
- 24. 獲取星期五開始的星期列表
- 25. JavaScript認爲星期四和星期五?
- 26. 星期五和星期六的UILocalNotification
- 27. 星期五日期後選擇
- 28. 無法比較星期五日期JavaScript
- 29. 作爲星期一或星期日influxdb使星期開始
- 30. 獲取指定日期的星期日
幾乎可以肯定,是的。然而,我並不確定你在問什麼,因爲對於問題的答案_「如何在本週的任何一天使用系統日期獲取當前的工作周?」是該問題的最後三個單詞;通過使用系統日期'sysdate'。你能否更具體地瞭解你想要做什麼;還包括數據和可能的查詢? – Ben