oracle中decode用于where 中

oracle中decode用于where 中 有个例子。查询时有两个参数 开始时间ldt_begin,结束时间ldt_end 当结束日期大于当前时间,某个值取 is null 否则 <ldt_end

操作方法

  • 01

    select k.patient_id,       k.visit_id,       k.charge_type,       t.name,       t.inp_no,       k.mailing_address,       t.phone_number_home,       t.date_of_birth,       k.admission_date_time,       k.dept_admission_to,       k.discharge_date_time,       k.dept_discharge_from  from pat_visit k, pat_master_index t where t.mailing_address = '本院'   and t.patient_id = k.patient_id   and k.discharge_date_time >= to_date('2014-01-01', 'yyyy-mm-dd')   and (decode(sign(to_date('2014-10-01', 'yyyy-mm-dd') - sysdate), 1, 1, 0) = 1 and      k.discharge_date_time is null)unionselect k.patient_id,       k.visit_id,       k.charge_type,       t.name,       t.inp_no,       k.mailing_address,       t.phone_number_home,       t.date_of_birth,       k.admission_date_time,       k.dept_admission_to,       k.discharge_date_time,       k.dept_discharge_from  from pat_visit k, pat_master_index t where t.mailing_address = '本院'   and t.patient_id = k.patient_id   and k.discharge_date_time >= to_date('2014-01-01', 'yyyy-mm-dd')   and  decode(sign(to_date('2014-10-01', 'yyyy-mm-dd') - sysdate), 1, 1, 0) = 0 and k.discharge_date_time <= to_date('2014-10-01', 'yyyy-mm-dd');  select (decode(sign(to_date('2014-10-01', 'yyyy-mm-dd') - sysdate),1,1,0) = 1 or  k.discharge_date_time is null)               and          k.discharge_date_time <= to_date('2014-10-01', 'yyyy-mm-dd')   from pat_visit k

  • 02

    select k.patient_id,       k.visit_id,       k.charge_type,       t.name,       t.inp_no,       k.mailing_address,       t.phone_number_home,       t.date_of_birth,       k.admission_date_time,       k.dept_admission_to,       k.discharge_date_time,       k.dept_discharge_from  from pat_visit k, pat_master_index t where t.mailing_address = '本院'   and t.patient_id = k.patient_id   and k.discharge_date_time >= to_date('2014-01-01', 'yyyy-mm-dd')   and (decode(sign(to_date('2014-10-01', 'yyyy-mm-dd') - sysdate), 1, 1, 0) = 1 and      k.discharge_date_time is null)

  • 03

    select k.patient_id,       k.visit_id,       k.charge_type,       t.name,       t.inp_no,       k.mailing_address,       t.phone_number_home,       t.date_of_birth,       k.admission_date_time,       k.dept_admission_to,       k.discharge_date_time,       k.dept_discharge_from  from pat_visit k, pat_master_index t where t.mailing_address = '本院'   and t.patient_id = k.patient_id   and k.discharge_date_time >= to_date('2014-01-01', 'yyyy-mm-dd')   and  decode(sign(to_date('2014-10-01', 'yyyy-mm-dd') - sysdate), 1, 1, 0) = 0 and k.discharge_date_time <= to_date('2014-10-01', 'yyyy-mm-dd'); select (decode(sign(to_date('2014-10-01', 'yyyy-mm-dd') - sysdate),1,1,0) = 1 or  k.discharge_date_time is null)               and          k.discharge_date_time <= to_date('2014-10-01', 'yyyy-mm-dd')   from pat_visit k

(0)

相关推荐

  • 如何在excel中计算单元格文本中标点的数量

    excel中使用文本是非常常见的操作,但是在有些时候,我们需要去计算其中特定标点的数量用于统计或者其他用处,这个操作怎么实现呢?本篇就来和大家分享一下如何在excel中计算单元格文本中标点的数量. 操 ...

  • windows7系统中鼠标滑轮键(中键)的快捷应用

    现在,绝大多数的鼠标都带有滑轮,相信大家对此应该并不陌生,但是对于滚轮键,即将滚轮垂直按下的功能,很多人应该就知之甚少了。下面我就总结几个滑轮键在win7系统中的快捷应用。 1.后台标签页中打开网页 ...

  • Excel中提取两列中取不重复(唯一)值之数组公式法图解

    Excel提取两列中不重复(唯一)值之数组公式法 将用到INDEX、SMALL、IF、ROW、MATCH这几个函数 工具/原料 excel 电脑 方法/步骤 我将通过数组公式在d1单元格输入数组公式然 ...

  • Excel2003中怎么将行中的数据复制到列中

    有时候我们在Excel中输入数据时是以“行”来排序的,但是过后才发现以“列”排序比“行”排序更方便,此时想将某行中的数据复制到某列中去,我们该如何实现呢?其实这种事情大家在制表的时候经常会遇到,若不使 ...

  • 会声会影X3中的色度键中吸管如何使用

    会声会影X3中的色度键中吸管和PS差不多,选中吸管工具,点选需要去掉的背景颜色就可以了。

  • 暴风影音中如何在视频播放中最小化暂停播放

    亲爱的暴迷们: 下面是小编ehoy对暴风影视库收集到的资料进行详细介绍,针对暴风影音中如何在视频播放中最小化暂停播放? 希望对大家有帮助: 暴风5:请您按照 主菜单-高级选项-播放设置-屏幕设置 的顺 ...

  • win7系统中怎么删除我的电脑中腾讯微云的图标?

    win7系统中怎么删除我的电脑中腾讯微云的图标?本人是不太喜欢资源管理器中乱添加软件图标.我相信很多朋友也会和我有一样的感受.但是现在越来越多的软件却不征的用户的同意,强行将图标添加到资源管理器中,这 ...

  • excel中怎么在窗体中绘制iPhone4模型?

    excel中怎么在窗体中绘制iPhone4模型? 1.打开excel,进入Visual Basic编辑器. 2.插入模块. 3.模块编程.在模块1内编程,声明5个函数,1个结构,并编写一句显示窗体的程 ...

  • Excel中合并单元格中快速添加序号的方法

    Excel中合并单元格中快速添加序号的方法 如下图所示,需要在数据的A列加入序号: 如果我们利用传统的拖动填充方式添加序号,系统会弹出这样的提示:"此操作要求合并单元格都具有相同大小&quo ...