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. mysql order by 多个字段排序

    工作中需用到order by 后两个字段排序,但结果却产生了一个Bug,以此备录. [1]复现问题场景 为了说明问题,模拟示例数据库表students,效果同实例. 如下语句Sql_1: SELECT ...

  2. Spring Boot 全局异常捕获

    import javax.servlet.http.HttpServletRequest; import org.springframework.web.bind.annotation.Control ...

  3. spring-boot 根据环境启动

    spring-boot 根据环境启动: java -jar spring-boot--config--SNAPSHOT.jar --spring.profiles.active=prod

  4. Linux上不了网的几个排查点

    下面是所有系统通用排查流程: 1.先ping网关: 例ping 192.168.12.1: 如果能通说明本地IP配置和本地到路由器的链路未发生问题. 如果不通需要检查本地设置和本地到路由的网线连接状态 ...

  5. 在oracle中如何把前台传过来的日期字符串转换成正确格式

    insert into ibill_sys_version(versionId,productCode,versionCode,versionDesc,versionUrl, upgradeWay,u ...

  6. java 常用的异常处理

    在Java中异常被当做对象来处理,根类是java.lang.Throwable类,在Java中定义了很多异常类(如OutOfMemoryError.NullPointerException.Index ...

  7. Linux 系统查看对应公网映射地址

    最近在解决网络问题时,需要查看本机的出口公网IP信息,所以在网络上搜索和请求运维达人,获得如下两个方法: curl ifconfig.me 在linux系统中输入上述的命令,可以查看到本机连接的公网信 ...

  8. Docker Overlay 介绍

    Overlay Network Overlay Network:属于Docker网络驱动,基于VXLAN封装实现Docker原生Overlay网络. Overlay Network:覆盖网络,在基础网 ...

  9. mysql 主键外键

    外键MUL:一个特殊的索引,用于关键2个表,只能是指定内容 主键PRI:唯一的一个不重复的字段.   # 创建一个表用来引用外键 create table class( -> id int no ...

  10. NSIS控制面板中显示安装包的大小和禁止多个安装程序实例

    转载:http://www.yhxs3344.net/jscript/nsis 转载:http://www.yhxs3344.net/archives/1292 1.控制面板中显示安装包的大小 ;需要 ...