[英]SQL: Convert Date to Null when Date is certian range from Today
我正在使用Oracle Datebase,並且要將日期從今天算起超過一定的月數時,我想將日期轉換為null。
我使用的日期格式是dd-mm-yy
因此,假設您有此表:
WITH TEST_TABLE as (select '1' as num, '10-FEB-16' from dual
union(select '2', '10-FEB-30' from dual)
union(select '3', '10-FEB-50' from dual)
union(select '4', '10-FEB-17' from dual))
我知道我可以使用: SELECT SYSDATE FROM DUAL;
獲取今天的日期,但我不確定如何按月比較。
如果日期從今天起超過24個月,該如何將日期更改為null?
像這樣:
update test_table
set dte = (case when add_months(dte, -12) < sysdate then dte end);
注意:您應該將日期作為date
數據類型存儲在數據庫中。 輸出格式(默認情況下)是DD-MMM-YY格式。 但這只是格式化輸出的日期。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.