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視窗函式over()的理解函式Oracle
- Oracle的dump函式Oracle函式
- Oracle的日期函式Oracle函式
- Oracle常用的函式Oracle函式
- Oracle聚合函式/分析函式Oracle函式
- 【函式】Oracle EXTRACT()函式與to_char() 函式函式Oracle
- oracle 函式Oracle函式
- oracle or 函式Oracle函式
- Oracle函式Oracle函式
- oracle的分析函式over 及開窗函式Oracle函式
- 【函式】Oracle函式系列(2)--數學函式及日期函式函式Oracle
- 【函式】oracle nvl2 函式函式Oracle
- 【Oracle的NVL函式用法】Oracle函式
- Oracle dump函式的用法Oracle函式
- Oracle trunc()函式的用法Oracle函式
- Oracle 函式 Translate 的用法Oracle函式
- Oracle函式的確定性Oracle函式
- oracle的with函式用法示例Oracle函式
- Oracle 分析函式的使用Oracle函式
- Oracle的日期函式(轉)Oracle函式
- Oracle 函式大全(字串函式,數學函式,日期函式,邏輯運算函式,其他函式)Oracle函式字串
- Oracle分析函式與視窗函式Oracle函式
- oracle函式大全-字串處理函式Oracle函式字串
- Oracle分析函式七——分析函式案例Oracle函式
- 7 Oracle 函式Oracle函式
- Oracle 字串函式Oracle字串函式
- Oracle 字串函式Oracle字串函式
- ORACLE USERENV函式Oracle函式
- oracle dump 函式Oracle函式
- oracle Extract 函式Oracle函式
- Oracle字串函式Oracle字串函式
- ORACLE 常用 函式Oracle函式
- oracle函式索引Oracle函式索引
- Oracle dump函式Oracle函式
- Oracle 分析函式Oracle函式
- oracle reverse函式Oracle函式
- oracle字元函式Oracle字元函式