有些业务场景下会有择出周末的需求,具体判断语句如下:

1、SELECT TO_CHAR(TO_DATE(DATA_DATE,'YYYY-MM-DD),'D') FROM DUAL;

如果DATA_DATE为星期六则结果为7,如果DATA_DATE为星期日则结果为1,所以TO_CHAR(TO_DATE(DATA_DATE,'YYYY-MM-DD),'D') NOT IN ('1','7')即可;

2、SELECT TO_CHAR(TO_DATE(DATA_DATE,'YYYY-MM-DD),'DAY') FROM DUAL;

根据 nls_date_language 的配置参数,结果为 'SATURDAY' 'SUNDAY' 或者 '星期六' '星期日'

另外需要注意的是语句在to_char为day的过程中,day的写法决定了saturday sunday的大小写

DAY-> 'SATURDAY' 'SUNDAY'

day-> 'saturday' 'sunday'

Day-> 'Saturday' 'Sunday'

但总有一些特殊情况,偶尔情况下还是需要周末的数据,但大方向是择出周末,提供一个思路:

使用一张配置表,表中可列出日历(如1900-01-01~2099-12-31),再插入一个开关字段(0为生效,1为失效),日常周末开关状态为1,需要使用的置为0

如有更好的方案欢迎交流。

Oracle判断周末的更多相关文章

  1. ORACLE判断两个日期间隔几个工作日

      CreateTime--2017年9月7日17:14:56 Author:Marydon ORACLE判断两个日期间隔几个工作日 方法:使用存储过程 /** * 判断两个日期间隔几个工作日 */ ...

  2. Oracle 判断 并 手动收集 统计信息 脚本

    CREATE OR REPLACE PROCEDURE SchameB.PRC_GATHER_STATS AUTHID CURRENT_USER IS BEGIN SYS.DBMS_STATS.GAT ...

  3. Oracle 判断某個字段的值是不是数字

    转:https://my.oschina.net/bairrfhoinn/blog/207835 摘要: 壹共有三种方法,分别是使用 to_number().regexp_like() 和 trans ...

  4. oracle 判断字符串是否包含指定内容

      1.情景展示 如何将表中的包含特殊字符的脏数据查出来? 2.instr()函数 语法: instr(string, substring[, start_position[, th_appearan ...

  5. SqlServer和Oracle判断表和列是否存在

    SqlServer .判断表Users是否存在 if object_id(N'Users',N'U') is not null print '存在' else print '不存在' .判断表User ...

  6. Oracle判断表、列、主键是否存在的方法

    在编写程序时,数据库结构会经常变化,所以经常需要编写一些数据库脚本,编写完成后需发往现场执行,如果已经存在或者重复执行,有些脚本会报错,所以需要判断其是否存在,现在我就把经常用到的一些判断方法和大家分 ...

  7. Oracle判断某个表是否存在的方法

    在SQL中,我们常常使用if exists来判断一个表或某个对象是否存在,例如:  IF EXISTS (SELECT * FROM sys.tables WHERE name = 'CODE_BMD ...

  8. oracle 判断是否数字 正则表达式法

     SELECT '-100'    FROM dual   WHERE REGEXP_LIKE('-100','(^[+-]?\d{0,}\.?\d{0,}$)'); REGEXP_LIKE 用法: ...

  9. Oracle判断语句集合(转载)

    SELECT decode(sign(to_date('2008-05-01', 'yyyy-MM-dd') -                   to_date('2008-03-01', 'yy ...

随机推荐

  1. python基础(7)-函数&命名空间&作用域&闭包

    函数 动态参数 *args def sum(*args): ''' 任何参数都会被args以元组的方式接收 ''' print(type(args)) # result:<class 'tupl ...

  2. element-ui table表格展开行每次只能展开一行

    https://www.jianshu.com/p/a59c22202f2c <template> <el-table @expand-change="expandSele ...

  3. rosetta deep_analysis

    此小程序可以分析backrub,enzdes类的聚类logo分析,详细路径是: /home/wangq/Programs/rosetta_2018.09.60072_bundle/tools/prot ...

  4. 初识GitHub之GitHub issues

    事实上,GitHub最重要的一个功能之一就是Issue(问题),有了Issue,极大地提高了用户的互动性,也同时推动了代码的发展,因为一人智短,众人拾柴火焰高. 在他人的仓库中,我们发现了需要的代码, ...

  5. .NET 4.5 中新提供的压缩类(转载)

    Windows8 的开发已经如火如荼开始了,在 Windows8 中提供的 .NET Framework 已经更新到了 4.5 版,其中又增加了一些新的特性,对压缩文件的支持就是其中之一. 在 4.5 ...

  6. linux关闭终端响铃

    title: linux关闭终端响铃 date: 2018-01-25 15:10:14 tags: linux categories: linux 在终端输入或是直接在.bashrc里添加一行 xs ...

  7. Django框架详细介绍---模板系统

    Django模板系统 官方文档: https://docs.djangoproject.com/en/2.0/ref/templates/builtins/#std:templatetag-for 1 ...

  8. PHP 7.3: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? · Issue #4037 · aces/Loris

    PHP 7.3: "continue" targeting switch is equivalent to "break". Did you mean to u ...

  9. arcgis 制图-插值图

    1.生成插值图 插值工具: 方案1:Spatial Analyst 工具-->插值分析-->反距离权重法 (IDW) + Spatial Analyst 工具-->提取分析--> ...

  10. Bootstrap日期插件在线使用,引入即可

      引入部分 <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script& ...