oracle中next_day()函数解析

Sql代码

当前系统时间的下一星期一的时间select   next_day(sysdate,1) from dual

NEXT_DAY(date,char)

date参数为日期型,

char:为1~7或Monday/Mon~Sunday/

指定时间的下一个星期几(由char指定)所在的日期,

char也可用1~7替代,1表示星期日,2代表星期一等

还可以是星期一、星期二...、星期日

Sql代码

select next_day(sysdate,'星期日') from dual;   --返回当前日期的星期日的日期和时间

Sql代码

SQL>   select   NEXT_DAY(sysdate,   'MONDAY ')   FROM   DUAL;

select   NEXT_DAY(sysdate,   'MONDAY ')   FROM   DUAL

ORA-01846:   周中的日无效

这种情况是由于数据库语言是中文造成的。

show parameter nls_date_language;

如果返回的是simplified chinese,表示中文,中文是用“星期一”这种表示的。要想用monday,tuesday这种英文表达,需要改写实例参数nls_date_language.

SQL>   alter   session   set   NLS_DATE_LANGUAGE   =   American;

Session   altered

show parameter nls_date_language;

SQL> select   NEXT_DAY(sysdate,   'MONDAY ')   FROM   DUAL;

SQL> select   NEXT_DAY(sysdate,'MON')   FROM   DUAL;

上面两处查出来的日期是一样的,日期+当前系统时间 就差时分秒不同而已

oracle中last_day()函数解析

last_day(某个日期) 返回特定日期所在月份的最后一天

select last_day(sysdate) from dual;---返回当前日期所在月份的最后一天的当前时间

例如:找出每个月倒数第三天入职的员工

SELECT * FROM EMP WHERE hiredate=last_day(hiredate)-2;

解释:hiredate表示雇员入职日期,last_day(hiredate)得到的是每个员工入职当有的最后一天,

-2表示倒数第三天,如果与员工入职时间相等,说明这个员工是当月倒数第三天入职的

oracle中next_day()、last_day()函数解析的更多相关文章

  1. Oracle中的单行函数

    Oracle中的单行函数 1 字符函数 UPPER()--将字符串转换为大写 SELECT UPPER('abc') FROM dual; LOWER()-将字符串转换为小写 SELECT LOWER ...

  2. Oracle中的substr()函数 详解及应用

    注:本文来源于<Oracle中的substr()函数 详解及应用> 1)substr函数格式   (俗称:字符截取函数) 格式1: substr(string string, int a, ...

  3. Oracle中Clob类型处理解析:ORA-01461:仅可以插入LONG列的LONG值赋值

    感谢原作者:破剑冰-Oracle中Clob类型处理解析 上一篇分析:ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值 最近为Clob字段在插入数据时发现当字符的字节数(一个半角字符一 ...

  4. Oracle中 Instr 这个函数

    http://www.jb51.net/article/42369.htm sql :charindex('字符串',字段)>0 charindex('administrator',MUserI ...

  5. 创建类似于Oracle中decode的函数

    -- 创建类似于Oracle中decode的函数create or replace function decode(variadic p_decode_list text[])returns text ...

  6. MySQL之实现Oracle中的rank()函数的功能

      假设表格为student, 数据如下:   我们要在MySQL中实现Oracle中的rank()函数功能,即组内排序,具体来说: 就是对student表中按照课程(course)对学生(name) ...

  7. oracle中的trim()函数详解

    1.先看一下Oracle TRIM函数的完整语法描述 TRIM([ { { LEADING | TRAILING | BOTH }[ trim_character ]| trim_character} ...

  8. oracle中的greatest 函数和 least函数

    oracle中的greatest 函数和 least函数 原文地址:https://blog.csdn.net/sinat_32023305/article/details/78778596    g ...

  9. 问题:oracle nvl;结果:Oracle中的NVL函数

    Oracle中的NVL函数 (2012-11-30 13:21:43) 转载▼ 标签: nvl oracle 分类: Oracle Oracle中函数以前介绍的字符串处理,日期函数,数学函数,以及转换 ...

随机推荐

  1. JavaScript 声明提前机制

    声明提前机制 在JavaScript存在着这样一种预处理机制,即浏览器在解析JS代码时会将var声明的变量和function声明的函数提升到当前作用域的顶部.但是解析JS代码时对var和functio ...

  2. three.js 3d三维网页代码加密的实现方法

    http://www.jiamisoft.com/blog/17827-three-js-3dsanweiwangyejiami.html https://www.html5tricks.com/ta ...

  3. DataFrame数据转为list,再逐行写入Excel

    首先使用np.array()函数把DataFrame转化为np.ndarray(), 再利用tolist()函数把np.ndarray()转为list, 示例代码如下: # -*- coding:ut ...

  4. 【mysql】逗号分割字段的行列转换

    由于很多业务表因为历史原因或者性能原因,都使用了违反第一范式的设计模式,即同一个列中存储了多个属性值.这种模式下,应用常常需要将这个列依据分隔符进行分割,并得到列转行的结果:这里使用substring ...

  5. promise封装的ajax

    var  myNewAjax=function(url){ return new Promise(function(resolve,reject){ var xhr = new XMLHttpRequ ...

  6. 使用VS Code调试Node

    1.双击打开vscode 2.找到底层面板 把ctrl改成LF 2. 3.打开文件夹,建立项目test 4.新建hellow.js 输入: var name='world'; var s='hello ...

  7. 8th,常用模块、正则表达式

    re模块 什么是正则? 正则就是用一些具有特殊含义的符号组合到一起(正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则.内嵌在Python中,通过re模块实现.正则表达式模 ...

  8. vmware中虚拟化的问题

    因为用的是Window系统,又不想换系统,所以在学习Linux时,使用的VMware来安装的Centos,想在VMware中安装KVM虚拟机,然后报错,说我没有打开虚拟化,我使用 的是Surface ...

  9. R语言-默认镜像设置

    问题1:如何设置默认镜像 你希望下载某些R包,因此希望设定默认的CRAN网站镜像,这样R每次下载时不需要你选择镜像. 解决方案 该方案要求用户R系统中包含一个.Rprofile文件,如方法3.16描述 ...

  10. [原][OSG]OSG例子程序简介

    1.example_osganimate一)演示了路径动画的使用(AnimationPath.AnimationPathCallback),路径动画回调可以作用在Camera.CameraView.M ...