oracle sql查询结果为空时如何显示一条空记录

您所在的位置:网站首页 查询值为空 oracle sql查询结果为空时如何显示一条空记录

oracle sql查询结果为空时如何显示一条空记录

2023-12-10 20:24| 来源: 网络整理| 查看: 265

工作中经常会写简单或复杂的sql查询,有时需要在sql查询基础上做些特殊处理以实现特殊显示效果。本经验将介绍oracle sql查询时,如果查询结果为空时(查询结果一条记录也没有),如何显示一条空记录(有一条记录,只是记录中的字段都为空值),同时当查询结果不为空时则按正常查询结果显示。这里我们借助的是oracle rownum属性。

方法步骤 一、

①、首先,我们来看下oracle sql普通查询时查询结果为空时的显示情况如下图所示。可以看到没做特殊处理时查询结果中一条记录都没有,此处的查询sql记为A查询。

oracle sql查询结果为空时如何显示一条空记录

②、然后,我们第一时间会想到既然要求查询结果为空时显示一条空记录,我们首先得创造出一条空记录来,于是想到用一条空记录来和上面的sql查询union 一下,得到了如下查询结果:

oracle sql查询结果为空时如何显示一条空记录

③、从上面查询结果中我们好像看到了那就是我们想要达到的预期效果,但是问题来了,一旦我查询条件变化时(查询条件中的loginname参数值变化),结果还会令人满意吗?我们来看下:

oracle sql查询结果为空时如何显示一条空记录

方法步骤 二、

①、

由上步查询结果我们可以看到,当原来查询sql查询结果不为空时,我们单纯按照union一条空记录的方法是不行的,因为我们希望实现动态地处理查询结果,即当查询结果不为空时则按正常查询结果显示,只有当查询结果为空时才显示一条空记录。于是,这里我们需要引入oracle rownum伪列来进行特殊处理。先看下使用rownum的简单查询结果,此处的查询sql记为B查询:

oracle sql查询结果为空时如何显示一条空记录 oracle sql查询结果为空时如何显示一条空记录

②、

由上步查询结果我们看到,rownum其实就是sql查询结果记录的编号。我们可以通过控制rownum的范围来实现特殊的查询效果,如rownum



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3