Oracle的LAST_DAY函式
Oracle中last_day()函式的用法
last_day(time)
:返回指定日期所在月份的最後一天;
查詢當前月份的最後一天:
select last_day(sysdate) from dual;
查詢某天所在月份的最後一天:
select last_day(to_date('1992-10-09','yyyy-mm-dd')) from dual;
如:
查詢每一個月最後一天過生日的同學:
select * from stu where last_day(birthday) = birthday;
oracle
的LAST_DAY()
函式
LAST_DAY
函式返回指定日期對應月份的最後一天。
獲取當前日期的最後一天
SQL> SELECT last_day(SYSDATE) FROM dual;
執行結果:
LAST_DAY(SYSDATE)
-----------------
2016/12/31 15:39:
獲取當前日期和當前日期所在月的最後一天
SQL> SELECT SYSDATE,
LAST_DAY(SYSDATE) "Last",
LAST_DAY(SYSDATE) - SYSDATE "Days Left"
FROM DUAL;
執行結果:
SYSDATE Last Days Left
----------- ----------- ----------
2016/12/18 2016/12/31 13
獲取當前日期所在月的第一天和最後一天:
SQL> SELECT TRUNC(SYSDATE, 'MONTH') FIRSTDAY,
LAST_DAY(TRUNC(SYSDATE, 'MONTH')) LASTDAY
FROM DUAL;
執行結果:
FIRSTDAY LASTDAY
----------- -----------
2016/12/1 2016/12/31
其實這些日期函式我們通常都是用來巢狀使用的,例如下面這個例項:
求當前日期的上個月月初和上個月月末日期
SELECT
TRUNC(add_months(SYSDATE,-1),'mm') AS first_day
,last_day(add_months(SYSDATE,-1)) AS last_day
FROM dual;
執行結果:
FIRST_DAY LAST_DAY
----------- -----------
2016/11/1 2016/11/30
oracle substr,to_date,to_char,first_day,last_day
用法
substr()
擷取字串:如:2008-05-01
我要得到2008
則可這樣子寫:
substr('2008-05-01',1,4);
擷取後的字串可以用||拼成一個新的字串:如:得到2008-1-1
,可寫為:substr('2008-5-1',1,4)||'01-01';
to_date()
可以將擷取後的字串轉換為相應的時間型別:('mystring','formatstring')
正好是將string
型別的字串轉換為時間物件,可以這樣寫:to_date(substr('2008-5-1',1,4)||'01-01'),yyyy-mm-dd);
to_char()
函式恰好相反,是將物件型別轉換為相應的字元型別:如:to_char(to_date(substr('2008-5-1',1,4)||'01-01'),yyyy-mm-dd));
查詢出來的將是一個字元型別.first_day()
得到一個月中的第一天:如first_day(to_date('2008-5-22','yyyy-mm-dd'))
結果:2008-5-1
last_day()
得到一個月最後的一天:如:last_day(to_date('2008-5-22','yyyy-mm-dd'))
結果:2008-5-31
oracle
函式大全 之 next_day
last_day
格式:NEXT_DAY(DATE,WEEKDAY)
即 NEXT_DAY(日期,星期幾)
NEXT_DAT
函式返回輸入日期開始,未來最近的指定星期對應的日期,直接寫 ‘星期一’
例如:select next_day(sysdate,'星期一') from dual;
返回 當前時間之後的第一個星期一的時間(比如今天’7月18號0:01:01’,星期三,則返回’7月23號0:01:01’,自己數)
格式:last_day(date)
即last_day(某個日期)
select last_day(sysdate) from dual;
返回特定日期所在月份的最後一天
例如:找出每個月倒數第三天入職的員工
SELECT * FROM EMP WHERE last_day(hiredate)-2=hiredate;
解釋:last_day(hiredate)
得到的是每個員工入職當有的最後一天,-2
表示倒數第三天,如果與員工入職時間相等,說明這個員工是當月倒數第三天入職的
相關文章
- oracle 函式Oracle函式
- oracle or 函式Oracle函式
- 【Oracle的NVL函式用法】Oracle函式
- Oracle常用函式Oracle函式
- 7 Oracle 函式Oracle函式
- Oracle 字串函式Oracle字串函式
- Oracle 字串函式Oracle字串函式
- Oracle分析函式與視窗函式Oracle函式
- oracle interval日期函式的bug!Oracle函式
- Oracle中Decode()函式的使用Oracle函式
- Oracle OCP(03):字元函式、數字函式和日期函式Oracle字元函式
- Oracle 自定義函式Oracle函式
- oracle 高階函式Oracle函式
- oracle json 解析函式OracleJSON函式
- Oracle 隨機函式Oracle隨機函式
- Oracle函式彙總Oracle函式
- oracle資料庫常用分析函式與聚合函式的用法Oracle資料庫函式
- Oracle的SYS_CONNECT_BY_PATH函式Oracle函式
- 6、Oracle中的分組函式Oracle函式
- 7.122 LAST_DAYAST
- oracle 10g函式大全–日期型函式Oracle 10g函式
- oracle常用函式介紹Oracle函式
- Oracle OCP(04):聚合函式Oracle函式
- oracle函式手冊(轉)Oracle函式
- Oracle函式入坑指南Oracle函式
- Oracle分析函式之開窗函式over()詳解Oracle函式
- Oracle中的正規表示式(及函式)詳解Oracle函式
- 【函式】Oracle12c 列轉行函式使用listagg函式Oracle
- ORACLE分析函式手冊(轉)Oracle函式
- Oracle OCP(05):轉換函式Oracle函式
- Oracle中pivot函式詳解Oracle函式
- 工作中,Oracle常用函式Oracle函式
- 原創:oracle聚合函式介紹Oracle函式
- ORACLE分析函式手冊二(轉)Oracle函式
- oracle Forms Builder常用函式 (轉載)OracleORMUI函式
- Oracle學習筆記(6)——函式Oracle筆記函式
- wm_concat函式與oracle版本函式Oracle
- Oracle日期格式化以及extract函式的使用Oracle函式