zoukankan      html  css  js  c++  java
  • Oracle:Decode在时间范围中的使用.

    数据表里有一个字段叫test_Time,存储的内容为测试时间,yyyy-mm-dd HH24:Mi:SS
    我在做查询的时候需要下一个sql,需要select test_time出来,如果test_TimeHH24:Mi:SS70000190000返回白班,否则返回夜班,这个decode 知道怎么写,我尝试过直接把time的小时截取出来,但是不知道如何比较,不能转换为数字类型的出来,把小时to_date(截取的小 时,HH24:Mi:SS')转换之后它又自动在前面加上了天,我不知道怎么写这个decode,知道的大侠指点一下啊,拜领!

    select case when to_number(to_char(test_time, 'hh24')) between 7 and 19 then '白班'
                else '
    夜班'
            end
      from (select to_date('2008-12-5 10:00:00', 'yyyy-mm-dd hh24:mi:ss') test_time
              from dual
          ) t
    ;


    SQL> SELECT MYDATE,

      2         DECODE(SIGN(MYDATE-TO_DATE(TO_CHAR(MYDATE,'YYYY-MM-DD')||'07:00:00','YYYY-MM-DD HH24:MI:SS'))

      3               *SIGN(TO_DATE(TO_CHAR(MYDATE,'YYYY-MM-DD')||'19:00:00','YYYY-MM-DD HH24:MI:SS')-MYDATE),

      4               1,'Morning Shift',

      5               0,'Morning Shift',

      6               'Afternoon Shift') CLASS_TYPE

      7    FROM TABLE_NAME TT;

    MYDATE                                             CLASS_TYPE

    -------------------------------------------------- ---------------

    2008-12-3 6:30:55                                  Afternoon Shift

    2008-12-3 10:42:33                                 Morning Shift

    2008-12-3 19:22:36                                 Afternoon Shift

    2008-12-3 19:00:00                                 Morning Shift

    2008-12-4 7:00:00                                  Morning Shift

    Tracy Xu

    魔兽就是毒瘤,大家千万不要玩。
  • 相关阅读:
    Qt5:快速设计对话框 QtDesigner 的使用
    Qt5:为菜单项添加图标 、 快捷键 和 状态栏 提示
    Qt5:在窗口上创建菜单栏
    Qt5:主窗口的创建 子类化QMainWindow
    AltiumDesigner设计快速入门
    AT24C02的MSP430驱动
    DSP_Builder设计方法说明_SinWave
    矩阵按键的MSP430驱动函数
    DAC8552使用说明
    PS2的FPGA解码模块
  • 原文地址:https://www.cnblogs.com/tracy/p/1712747.html
Copyright © 2011-2022 走看看